首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出10
系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出10
admin
2015-12-30
38
问题
系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出10件产品后,其他消费者进程才可以取产品。请使用信号量P,V(或waitt(),signal()操作实现进程间的互斥与同步,要求写出完整的过程,并说明所用信号量的含义和初值。
选项
答案
这是典型的生产者和消费者问题,只对典型问题加了一个条件,只需在标准模型上新加一个信号量,即可完成指定要求。 设置四个变量mutex1、mutex2、empty和full,mutex1用于一个控制一个消费者进程一个周期(10次)内对于缓冲区的控制,初值为1,mutex2用于进程单次互斥的访问缓冲区,初值为1,empty代表缓冲区的空位数,初值为0,full代表缓冲区的产品数,初值为1000,具体进程的描述如下: semaphore mutex1=1; semaphore mutex2=1, semaphore empty=n; semaphore full=0; producer(){ while(1){ 生产一个产品; P(empty);//判断缓冲区是否有空位 P(mutex2);//互斥访问缓冲区 把产品放入缓冲区; V(mutex2),//互斥访问缓冲区 V(full);//产品的数量加1 } } consumer()( while(1){ P(mutex1)//连续取10次 for(int i=0;i<=10;++i){ P(full);//判断缓冲区是否有产品 P(mutex2);//互斥访问缓冲区 从缓冲区取出一件产品; V(mutex2);//互斥访问缓冲区 V(empty);//腾出一个空位 消费这件产品; } V(mutex1) } }
解析
转载请注明原文地址:https://kaotiyun.com/show/sbRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
研制出具有环形电枢的直流发电机的科学家是()。
新中国建立初期,在工矿企业中进行的民主改革和生产改革,主要是为了()
1901年6月,发表《立宪法议》,首先提出君主立宪要求的是()。
提出行星绕太阳运行为椭圆形轨道的天文学家是()。
文艺复兴时期,系统提出了国家主权理论的政治思想家是()。
1978年直接领导和发动真理标准问题讨论的中央领导人是()。
()自幼随父在西域成长,深悉西域道里、风土和政治情况。他编著的《西域记》一书,是范晔撰《后汉书.西域传》的重要根据。
把变量引进数学。使解析几何成为数学发展史上转折点的科学家是()。
(1)页面长度为1KB=210B,因此页内偏移地址占10位。主存大小为16KB=214B,所以物理地址占14位。0AC5H=0000101011000101B,除去后10位,得到页号为2,则查找页表可知物理块号为4,所以物理地址是0100101100
随机试题
体内可以储备糖原的成分是()。
患者,男性,28岁。6小时前从4米高处坠落,不能站立行走。查体:左小腿明显肿胀,中段畸形,足背动脉搏动减弱,皮肤温度较对侧降低,被动屈伸足趾时疼痛加重。出现该临床表现最主要的原因是
下列对宪法的“法治”原则理解正确的有:()
为了稳定输出电压,提高输入电阻,放大电路应该引入下列负反馈中的()。
某公司获得银行贷款100万元,年利率为6%,期限三年,若以半年为转换期,复利计息,那么,到期后应偿付银行本息是()
亚里士多德曾经说过:“德可以分为两种。一种是智慧的德,另一种是行为的德。前者是从学习中得来的。后者是从实践中得来的。”这表明。加强道德修养应当运用
包过滤防火墙通过(23)来确定数据包是否能通过。
Itiscustomaryforadultstoforgethowhardanddullandlongschoolis.Thelearningbymemoryofallthebasicthingsonemu
Saks,611FifthAve.(MidtownEast/MurrayHill),near50thSt.,212-753-4000HoursMon-Wed,10am-7pm;Thu,10am-8pm;Fri
WearehighintheBlueRidgeMountainsinthestateofNorthCarolina.Itisveryearlyinthemorning.Wehavebeen【C1】______
最新回复
(
0
)