首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
admin
2015-12-30
61
问题
三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用geteven()从该缓冲区中取出一个偶数并用counteven()统计偶数个数。
请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义信号量的含义。要求用伪代码描述。
选项
答案
互斥资源:缓冲区只能互斥访问,因此设置互斥信号量mutex。 同步问题:P1、P2因为奇数的放置与取用而同步,设同步信号量odd;P1、P3因为偶数的放置与取用而同步,设置同步信号量even;P1、P2、P3因为共享缓冲区,设同步信号量empty,初值为N。 程序如下: semaphore mutex=1; semaphore odd=0,even=0; semaphore empty=N; main() cobegin{ Process P1() while(True) { x=produce();//生成一个数 p(empty);//判断缓冲区是否有空单元 P(mutex);//缓冲区是否被占用 Put(); V(mutex);//释放缓冲区 if(x%2==0) v(even);//如果是偶数,向P3发出信号 else V(odd);//如果是奇数,向p2发出信号 } Process P2() while(True) { p(odd);//收到p1发来的信号,已产生一个奇数 p(mutex);//缓冲区是否被占甩 getodd(); V(mutex);//释放缓冲区 V(empty);//向p1发信号,多出一个空单元 countodd(); } Process P3() while(True) { p(even);//收到p1发来的信号,已产生一个偶数 p(mutext);//缓冲区是否被占用 geteven(); V(mutex);//释放缓冲区 V(empty);//向p1发信号,多出一个空单元 counteven(); } }coend
解析
转载请注明原文地址:https://www.kaotiyun.com/show/coRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
下列事件中,不是发生在上海的是()
晚清时期下列武装力量出现的先后顺序是
下列文献中,不属于记述古埃及第一中间期历史事件文献的是()。
对三国鼎立到隋朝重新统一全国这段历史时期的政局,叙述正确的是()。①只有西晋有过短暂的统一②大多数时间是多个政权分立、南北对峙的复杂政局③西晋、北魏、东晋都有过短暂的统一④除三国分立以外,其他时间基本上处于统
《和平大使》一书中评述说:“英国的根本利益在于防止德国的崩溃,只要德国是一个统一的整体,欧洲就能或多或少地保持均势。”英国在下列哪些事件中的态度体现了上述原则()。①巴黎和会②国联成立联成立③华盛顿会议
西哥特人图鲁兹建立起第一个得到罗马帝国承认的蛮族王国——西哥特王国的时间是()。
试结合新民主主义革命不同历史时期的历史实际,阐述中国共产党在处理同资产阶级复杂关系问题上的做法、结果及其历史经验。
概述日本古代文化的发展情况。
在巴黎和会上,法国要求严厉制裁德国的目的是()。
某计算机字长16位,采用16位定长指令字结构,部分数据通路结构如下图所示。图中所有控制信号为1时表示有效、为0时表示无效。例如控制信号MDRinE为1表示允许数据从DB打入MDR,MDRin为1表示允许数据从内总线打入MDR。假设MAR的输出一直处于使能状
随机试题
12岁以后到成年,行为发展进入
A.发热、贫血、出血B.出血C.贫血D.发热、贫血、出血、肝大、脾大E.贫血、出血,无肝大、脾大原发性血小板减少性紫癜主要临床表现是
年龄40岁,女性,因2周来感乏力,午后低热(体温37.6℃~38℃)盗汗,食欲下降,左下胸痛,与吸气有关,后逐渐减轻,但感气短,且逐渐加重,来门诊检查,此时下述体征中哪一项可能有误
仲裁委员会可以在直辖市和省、自治区人民政府所在地的市设立,但仲裁委员会( )。
()是查处基金违法案件的基础。
下列没有歧义的一句是()。
有以下程序:#includemain(){FILE*pf;char*s1="China",*s2="Beijing";pf=fopen("abc.dat","wb+");fwrite(s2,
十进制数89转换成二进制数是()。
A、Adentist.B、Acook.C、Adietician.D、Atwirler.A男士请女士张大嘴巴并告知哪里疼,女士说这儿疼,特别是咬热或冷的东西时。根据这样的对话判断他们在谈论牙痛,男士是牙医,所以答案是A。
Biologically,thereisonlyonequalitywhichdistinguishesusfromanimals:theabilitytolaugh.Inauniversewhichappearst
最新回复
(
0
)