参考答案: C D
详细解析:
对于B1每次执行前都只P(S1),访问完B1后,执行V(S1),从这种结构来看,P(S1)……V(S1)的作用是:保证进程只有一个同时访问B1,所以S1应为互斥信号量,其初始值应为1;同样S5应该与S1类似在将物品放入B1前执行P(S2),再从B1取走物品后执行V(S2),说明该信号量S2应为同步信号量,执行P(S2)时先判定B1中是否有存储空间,如果有则放入物品,没有则进行等待;V(S2),是在从B1拿走物品后执行,即:当从B1中取出1件商品后,B1就有一个空间,接下来通过V(S2)来唤醒队列中等待向B1中放物品的进程。由于B1可以放n件物品,所以S2应该为n;S4与S2相似,所以S2应该为m。