问题 单项选择题

假设系统中有n个进程共享3台打印机,任一进程在任一时刻最多只能使用1台打印机。若用PV操作控制n个进程使用打印机,则相应信号量S的取值范围为______;若信号量S的值为-3,则系统中有______个进程等待使用打印机。

A.0
B.1
C.2
D.3

答案

参考答案:D

解析: P操作表示申请一个资源,V操作表示释放一个资源。P操作的定义为:S:=S-1,若S≥O,则执行P操作的进程继续执行,否则将该进程置为等待状态,排入等待队列。V操作的定义为:S:=S+1,若S>0,则执行V操作的进程继续执行,否则释放队列中第一个等待信号量的进程。
本试题中,S是一个互斥信号量,表示当前某台打印机可否被某个进程使用。因为有3台打印机可以并发使用,所以S的初值应设为3,S的取值范围为3,2,1,0,-1,...,-(n-3)。当S<0时,表示有|S|个进程正在等待进入临界区,它们处于等待队列中。若S=-3,则系统中有3个进程等待使用打印机。

单项选择题 A1/A2型题
多项选择题