首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出10
系统中有多个生产者进程和多个消费者进程,共享一个能存放1000件产品的环形缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待;当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出10
admin
2015-12-30
41
问题
系统中有多个生产者进程和多个消费者进程,共享一个能存放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
学硕统考专业
相关试题推荐
维也纳会议争论的焦点问题是()。
列宁在()中系统地阐明了马克思主义的国家学说。
关于大陆人民大规模达到台湾的第一次明确的记录出现在()。
(北魏孝文帝)“初谋南迁,恐众心恋旧,乃示为大举,因以胁定群情,外谋南伐,其实迁也。1日人怀土,多不所愿,内惮南征,无敢言者。于是定都洛阳。”上引材料不能说明的问题是()。
()自幼随父在西域成长,深悉西域道里、风土和政治情况。他编著的《西域记》一书,是范晔撰《后汉书.西域传》的重要根据。
30年代,美国政府对一系列国际问题执行中立政策,最主要的原因是()。
中国古代史分期问题的焦点有哪些?简述其代表人物及思想。(兰州大学2013年中国史基础真题)
阅读下面史料,回答问题:材料一各缔约国主力舰替换总吨位按照标准排水量计算不得超过如下:合众国525000吨;英帝国525000吨;法国175000吨;意大利175000吨;日本315000吨。
阅读下面史料,回答问题:材料一各缔约国主力舰替换总吨位按照标准排水量计算不得超过如下:合众国525000吨;英帝国525000吨;法国175000吨;意大利175000吨;日本315000吨。
随机试题
A.心、脾、肾B.肺、肝、肾C.肝、脾、心D.肺、脾、肾E.肝、脾、肾(1991年第97,98题)水肿的病位在()
某患者在输液过程中,出现呼吸困难、气促、咳嗽、咳粉红色样痰,听诊两肺有湿性啰音,你认为:(1)病人出现何种反应?(2)发生的原因是什么?(3)护理的措施有哪些?
下列药物中不是治疗心力衰竭的正性肌力药物的是
以下没有每日价格波动限制的有()。
资本主义基本经济规律即______规律。
嘉兴市自明清时即有“人文之邦”的美誉。()
根据以下资料,回答下列问题。2008年初中和高中在校学生均高于全省平均水平的设区市有几个?()
某选区应选人大代表2人,超过半数选民参加了投票,代表候选人按得票多少的排序为杨某、叶某、李某、张某,其中仅杨某获得过半数选票。对此情形,下列做法不符合法律规定的是
设A,B均为3阶矩阵,且满足AB=2A+B,其中A=,则|B-2E|=________.
FoodSafetyandFoodborneIllnessesFoodsafetyisanincreasinglyimportantpublichealthissue.Governmentsalloverthew
最新回复
(
0
)