首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有n个生产者进程向1个有限的缓冲区不断地发送消息,这些消息通过缓冲区分发到m个消费者,缓冲区的大小只可以存放1条消息。生产者和消费者的工作遵循如下规则: (1)生产者和消费者对缓冲区的访问互斥; (2)对每1条放入缓冲区的消息,所有消费者都
有n个生产者进程向1个有限的缓冲区不断地发送消息,这些消息通过缓冲区分发到m个消费者,缓冲区的大小只可以存放1条消息。生产者和消费者的工作遵循如下规则: (1)生产者和消费者对缓冲区的访问互斥; (2)对每1条放入缓冲区的消息,所有消费者都
admin
2013-07-12
70
问题
有n个生产者进程向1个有限的缓冲区不断地发送消息,这些消息通过缓冲区分发到m个消费者,缓冲区的大小只可以存放1条消息。生产者和消费者的工作遵循如下规则:
(1)生产者和消费者对缓冲区的访问互斥;
(2)对每1条放入缓冲区的消息,所有消费者都必须接收1次;
(3)缓冲区满时,生产者必须阻塞,缓冲区空时,消费者阻塞。
请用信号量和P、V操作组织正确的发送和接收。用类C语言进行描述。
选项
答案
本题的解答采用分离的信号量来实现,可以比较清楚地看到操作的过程。 typedef int semaphore; //定义信号量 semaphore mutex; //缓冲区互斥信号量用于读写互斥 semaphore empty[m]={1,1,…,1}; //当前缓冲区所有格子为空 serflaphore grid[m]={0,0,…,0); //缓冲区的每个格子满的信号量 void producer( ) //生产者 {int i,buffer; while(1) //并发调度 {message:produce( ); //生产者生产消息 for(i=0,i
解析
本题是经典的生产者和消费者问题的变形。在经典的生产者和消费者的模型中,生产者和消费者共用一组缓冲区,生产者向缓冲区中写入一次数据,消费者从缓冲区中读出一次数据,即写一次,读一次。本题中,生产者向缓冲区中只写一次,但是每个消费者却都要读一次。对于此类问题,可以把缓冲区看成是m格的缓冲区阵列,这样一来,生产者每写一次缓冲区,相当于填满了一块m格的缓冲区,而消费者只需要读出属于自己格子的消息即可,当所有的格子读空以后,这个缓冲区就可以接纳下一个生产者的写入。分析清楚其工作机制,我们可以从经典的生产者和消费者问题出发,来设计相应的信号量。信号量的设计可以是信号量组,也可以采用分离的信号量来实现。
转载请注明原文地址:https://kaotiyun.com/show/nuxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
日本占领下列城市的先后顺序是()①上海②北京③天津④南京⑤武汉⑥广州
下列不属于清统治者加强文化专制和思想控制的是()
下列各项内容和王羲之的书法成就有关的是()。①开始把字体由隶书转化为楷书②书法代表作有《兰亭序》、《黄庭经》等③他博采众长,世称“书圣”④其子王献之书法造诣也极高,父子合称“二王”
下列不是空想社会主义产生的历史背景的是()。
简述布匿战争的过程。
陈毅在一首诗中写道:“江汉战术刘邓捷,中原重见李郑回。陈谢挥戈下宛洛,聂杨立马薄燕台。”诗中反映的是()。
新石器时代的房屋建筑根据环境的不同形成了不同的类型,()地区多为干栏式建筑。
两河流域分为两部分,其中南部称为()。
ICMP在TCP/IP协议集中属于()。
下列选项中,用于设备和设备控制器(I/O接口)之间互连的接口标准是
随机试题
一容器中装有质量为0.14kg,压强为2.0265×106Pa,温度为127℃的氮气。可知这容器的体积V为()。
防火分区是指在建筑内部采用()、耐火楼板及其他防火分隔设施分隔而成,能在一定时间内防止火灾向同一建筑的其余部分蔓延的局部空间。
下列哪项不属疏凿饮子的组成
男,34岁,5天前有不沽性接触史,昨日开始尿痛、尿频、尿道口少许分泌物,今日症状加重,分泌物变成黄色脓性,拟诊断淋病确诊淋病的检验结果应是
临床不适用于牙种植术的是()
某安全等级为一级的建筑基坑支护结构承载能力极限状态设计时,其作用标准组合的弯矩值Mk=300kN.m,其弯矩设计值M(kN.m)至少应取下列()项。
某企业向手机生产企业供应触摸屏,手机生产企业要求供货产品生产过程的不合格品率P
广告:是指为了商业目的,由商品经营者或服务提供者承担费用,通过一定媒介或一定形式如报刊、电视、路牌、橱窗等,直接或间接地对自己推销的商品或者所提供的服务所进行的公开宣传活动。下列属于广告活动的是()。
盗窃正在使用中的公路上的井盖的行为,构成()。
Itishardtopredicthowscienceisgoingtoturnout,andifitisreallygoodscienceitisimpossibletopredict.Ifthethi
最新回复
(
0
)