2个信息发送进程a、b不断向缓冲区存放数据,由进程c取走缓冲区的数据,每次只能存取一个数据(缓冲区初态为空,容量为无限大)。通过信号量semWait、sereSignal操作实现三个进程间的互斥和同步,并写出信号量的初值和意义。

admin2016-05-12  41

问题 2个信息发送进程a、b不断向缓冲区存放数据,由进程c取走缓冲区的数据,每次只能存取一个数据(缓冲区初态为空,容量为无限大)。通过信号量semWait、sereSignal操作实现三个进程间的互斥和同步,并写出信号量的初值和意义。

选项

答案信号灯初值和意义如下。 data:缓冲区中的数据个数,初值为0。 mutex:存或取时的互斥变量。 a,b进程 c进程 while(1){ while(1){ semWait(mutex); semWait(data); put(data); semWait(mutex); semSignal(mutex); get(data); semSignal(data); semSignal(mutex); } }。

解析
转载请注明原文地址:https://jikaoti.com/ti/aCEaFFFM
本试题收录于: 操作系统题库理工类分类
0

随机试题
最新回复(0)