设有两个进程A和B,它们共享一个缓冲器,进程A(生产者)不断地读入记录并送到缓冲器,进程B(消费者)不断地从缓冲器中取出记录并加工。假设缓冲器的容量为每次只能存放一个记录。进程A将一个记录送入缓冲器后,应等到进程B发来消息(已将缓冲器中的记录取走),才能把下一个记录存入缓冲器。进程B把已存入缓冲器的记录取走后,也应等到A发来消息(缓冲器已趣入一个待加工的记录),才能从缓冲器中取出记录去加工。用PV操作实现生产者/消费者之间的同步。
第1题:
有三个并发进程R、W1和W2,共享两个各可存放一个数的缓冲区B1、B2。进程R每次从输入设备读入一个数,若读入的是奇数,则将它存入B1中,若读入的是偶数,将它存入B2中;当B1中有数,由进程W1将其打印输出;当B2中有数,进程W2将其打印输出。试编写保证三者正确工作的程序。
第2题:
2、【某学期考题】假定系统有三个并发进程read, move和print共享缓冲器B1和B2。进程read负责从输入设备上读信息,每读出一个记录后把它存放到缓冲器B1中。进程move从缓冲器B1中取出一记录,加工后存入缓冲器B2。进程print将B2中的记录取出打印输出。缓冲器B1和B2每次只能存放一个记录。要求三个进程协调完成任务,使打印出来的与读入的记录的个数,次序完全一样。请用信号量及PV操作实现这三个进程的同步。(要求设置信号量的初值)
第3题:
26、父进程和子进程在资源共享方面的关系有()。
A.父进程共享子进程资源的子集
B.父进程子进程共享所有的资源
C.子进程共享父进程资源的子集
D.父进程和子进程无资源共享
第4题:
用PV操作解决生产者和消费者问题。假设有一个可以存放1件产品的缓冲器;有m个生产者,每个生产者每次生产一件产品放入缓冲器中,有n个消费者,每个消费者每次从缓冲器中取出一件产品。
第5题:
6、进程A和进程B共享变量1,需要互斥;进程B和进程C共享变量2,需要互斥;从而进程A与进程C也必须互斥