操作系统复习指南资料.ppt

* 解:(1)缓冲区是一互斥资源,因此设互斥信号量mutex; (2)同步问题:P1、P2因为奇数的放置与取用而同步,设同步信号量odd;P1、P3因为偶数的放置与取用而同步,设同步信号量even;P1、P2、P3因为共享缓冲区,设同步信号量empty。 P1、P2、P3的活动描述如下: semaphore mutex=1,odd=0, even=0, empty=N; 进程P1 while(true) { number=produce(); wait(empty); wait(mutex); put(); signal(mutex); if(number%2==0) signal(even); else signal(odd); } 进程P2 while(true) { wait(odd); wait(mutex); getodd(); signal(mutex); signal(empty); countodd(); } 进程P3 while(true) { wait(even); wait(mutex); geteven(); signal(mutex); signal(empty); counteven(); } * 18、什么是死锁?产生死锁的原因是什么?死锁产生的必要条件有哪些? 答:两个或两个以上的进程在保持部分资源的同时等待本组其他进程占

文档评论(0)

1亿VIP精品文档

相关文档