某企业的生产流水线上有2名工人P
1
和P
2
,1名检验员P
3
。P
1
将初步加工的半成品放入半成品箱B
1
;P
2
从半成品箱B
1
取出继续加工,加工好的产品放入成品箱B
2
;P
3
从成品箱B
2
取出产品检验。假设B
1
可存放n件半成品,B
2
可存放m件产品,并设置6个信号量S1、S2、S3、S4、S5和S6,且S3和S6的初值都为0。采用PV操作实现P
1
、P
2
和P
3
的同步模型如下图所示,则信号量S1和S5__________(8);S2、S4的初值分别为___________(9)。
单选题
(8)
【正确答案】
C
【答案解析】解析:因为信号量S1是一个互斥信号量,表示半成品箱B1当前有无工人(生产者)使用,所以初值为1。信号量S5也是一个互斥信号量,表示成品箱B2当前有无工人或检验员使用,所以初值为1。
单选题
(9)
【正确答案】
D
【答案解析】解析:信号量S2表示半成品箱B1的容量,故S2的初值为n。当工人P1不断地将其工序上加工的半成品放入半成品箱B
1
时,应该先测试半成品箱是否有空位,故工人P1使用P(S2),当工人P2从半成品箱取一件半成品时,半成品箱B
1
就空出一个空位,故工人P2使用V(S2)释放空间。 同理,信号量S4表示成品箱B2的容量,故S4的初值为m。当工人P2完成一件产品放入成品箱B
2
时,应该先测试成品箱是否有空位,故工人P2使用P(S4),当检验员P3从成品箱取一件产品检验时,成品箱B
2
就空出一个空位,故检验员P3使用V(S4)释放空间。