参考答案: D C
详细解析:
由于系统中只有一个缓冲区,需要设置一个信号量S1,且初值为1,表示缓冲区空,可以将产品送入缓冲区。为了实现P1与P2进程间地同步间题,设置另一个信号量S2,且初值为O,表示缓冲区有产品。这样,当生产者进程P1生产产品送入缓冲区时需要判断缓冲区是否为空,需要执行P(S1),产品放入缓冲区后需要执行V(s2),通知消费者缓冲区已经有产品。而消费者进程P2在取产品消费之前必须判断缓冲区是否有产品,需要执行P(S2),取走产品后缓冲区空了,需要执行V(S1),释放缓冲区。