请在 下方输入 要搜索的题目:

三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用procuce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用geteven()从该缓冲区中取出一个偶数并用counteven()统计偶数个数。请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。

三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用procuce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用geteven()从该缓冲区中取出一个偶数并用counteven()统计偶数个数。请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。

发布时间:2025-04-01 13:48:41
推荐参考答案 ( 由 快搜搜题库 官方老师解答 )
联系客服
答案:【计分规则】: struct semaphone full_odd, full_even, mutex, empty;full_odd.value=0;full_even.value=0;mutex.value=1;empty.value=N; void main( ) { cobeginP1( ), P2( ), P3( );coend }
专业技术学习
相关试题
专业技术学习
搜搜题库系统