单选题
若有4个进程共享同一程序段,而且每次最多允许3个进程进入该程序段,则信号量的变化范围是( )。
A.3,2,1,0 B.3,2,1,0,-1
C.4,3,2,1,0 D.2,1,0,-1,-2
【正确答案】
B
【答案解析】[解析] 本题目考查信号量的取值范围。程序段最多允许三个进程进入,则表示资源的数目为3,因此,信号量初值为3,每进入一个进程,信号量的值减1,当信号量的值减为0时,表示三个进程均进入程序段,此时若再有一个进程请求进入执行P操作,则信号量的值减为-1,进程阻塞。一共有四个进程,所以信号量的值最小为-1。因此信号量的值取值范围为3,2,1,0,-1。因此应该选B。