某企业生产流水线上有2名工人P1和P2,1名检验员P3。P1将初步加工半成品放入半成品箱B1; P2从半成品箱B1取出继续加工,加工好产品放入成品箱B2;P3从成品箱B2去除产品校验。假设B1可存放n件半成品,B2可存放m件产品,并设置6个信号量S1、S2、S3、S4、S5和S6,且S3和S6初值都为0。采用PV操作实现P1、P2和P3同步模型如下图所示,则信号量S1和S5( )

在本题中涉及到信号量较多,所以先要分析应用场景中哪些地方可能涉及到互斥和同步,这样才能把问题分析清楚。从题目描述可以了解到整个流程由3名不同工人协作完成,先进行P1处理,然后是P2,最后P3,这样要达到协作关系,要使用同步信号量。同时由于P1处理结果会存到B1中,P2再从B1取内容,在此B1不能同时既进入存操作,也进行取操作,这就涉及到互斥。结合配图可以看出:S1信号量是互斥信号量,它确保B1使用是互斥使用;S5信号量针对B2起到同样作用









