- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.10 设在书 3.6节中所描述的生产者-消费者问题中,其缓冲部分为m个长度相等的有界缓冲区组成,且每次传输数据长度等于有界缓冲区长度以及生产者和消费者可对缓冲区同时操作。重新描述发送过程deposit(data)和接收过程remove(data)。;作业中主要问题:
1、设第1块缓冲区的公用信号量为mutex[1]
2、mutex[i] ;mutex t[i] ; mutex [n]
3、P(avail)
P(mutex[i] )
V(full)
V(mutex[i] );分析:
1、本题所描述的生产者-消费者问题中,“其缓冲部分为m个长度相等的有界缓冲区组成,且每次传输数据长度等于有界缓冲区长度”,与教材中3.6节(P62)问题有所不同。
(1)教材中3.6节问题中,一次从有界缓冲区中取一个单元;
(2)这里,一次从m个有界缓冲区中取一个缓冲区。;2、本题所描述的生产者-消费者问题中,“生产者和消费者可对缓冲区同时操作”,与教材中3.6节(P62)问题有所不同。
(1)教材中3.6节问题中,由于有界缓冲区是临界资源,因此,各生产者进程和各消费者进程之间必须互斥执行。
(2)这里,生产者和消费者之间不需要互斥。
(3)生产者和生产者之间?消费者和消费者之间?;解:首先,可以看到,本问题是一个同步问题。即生产者和消费者之间满足如下条件:
(1) 消费者想接收数据时,有界缓冲区中至少有一个缓冲区是满的;
(2) 生产者想发送数据时,有界缓冲区中至少有一个缓冲区是空的。;其次,虽然生产者和消费者之间不需要互斥,但在生产者(消费者)之间,由于有界缓冲区是临界资源,因此,各生产者(消费者)进程之间必须互斥执行。
由上分析,设公用信号量mutex1用来保证生产者进程间的互斥,公用信号量mutex2用来保证消费者进程间的互斥, mutex1 和mutex2初值均为1;;设信号量avail为生产者进程的私用信号量,表示空缓冲区数目,初值为m;
设信号量full为消费者进程的私用信号量,表示非空缓冲区数目,初值为0;
从而有: ;生产者进程
deposit(data):
begin
P(avail)
P(mutex1)
送数据入某空缓冲区
V( mutex1 )
V( full)
end;3.11 两进程PA,PB通过两FIFO缓冲区队列连接(如图),每个缓冲区长度等于传送消息长度。进程PA,PB之间的通信满足如下条件:
(1) 至少有一个空缓冲区存在时,相应的发送进程才能发送一个消息。
(2) 当缓冲队列中至少存在一个非空缓冲区时,相应的接收进程才能接收一个消息。
试描述发送过程send(i,m)和接收过程receive(i,m)。这里i代表缓冲队列。;作业中主要问题:
1、bufempty[0]= bufempty[1]=n
2、local x
buf [ i ] (x)
buf [ i ] (x)←m
3、算法格式:缩进;分号
4、教材P61 ;分析:
1、本题所描述问题中(设上面的缓冲队列为0,下面的缓冲队列为1,即i的值为0和1),
(1)PA从队列1中接收数据时,要求至少有一个缓冲区是非空的;向队列0中发送数据时,要求至少有一个缓冲区是空的;;分析:
(2)PB从队列0中接收数据时,要求至少有一个缓冲区是非空的;向队列1中发送数据时,要求至少有一个缓冲区是空的。
2、因为是FIFO缓冲区队列,所以对缓冲区队列的操作不需要互斥。
3、由于PA和PB的对称性,对i要进行一定处理;解:首先,可以看到,本问题存在同步关系,即PA和PB之间存在着同步关系。
(1) 设n[i]为缓冲队列i中缓冲区的个数。
(2)设SM(i) 为发送进程的私用信号量,表示缓冲队列i中空缓冲区的个数,其初值为 n[i] 。
(3)设RM(i) 为接收进程的私用信号量,表示缓冲队列i中满缓冲区的个数,其初值为0。;(2)设SM(i) 为发送进程的私用信号量,表示缓冲队列i中空缓冲区的个数,其初值为 n[i] 。
(3)设RM(i) 为接收进程的私用信号量,表示缓冲队列i中满缓冲区的个数,其初值为0 。
(4) 进程PA或PB调用过程receive(i,m)将消息m从缓冲队列i读往自己的数据区;调用过程send(i,m)将消息m送往缓冲队列i。;send(i,m):
begin
建立消息m
P(SM[i])
将消息m送入消息缓冲队列i
V(RM[i])
end;receive (i,m):
begin
P(RM[i])
从消息缓冲队列i中接收消息m,
您可能关注的文档
- 第六章 集装箱运输课件.ppt
- HW2-计算机科学与导论-思想与方法.doc
- 《网络组建技术》课程教学大纲.doc
- 2007、2008高级《数据库技术与应用》课程教学大纲.doc
- 生物工程概论作业.docx
- MY-MBA--课程大纲.doc
- 计算机学习必备知识:【技术分享】如何区分大数据下的三大利器:数据科学家,数据工程师与数据分析师.docx
- 第六章生产设施布置课件.ppt
- 注塑机调试基本知识.ppt
- 第六章 印制电路板课件.ppt
- 4.1 陆地水体及其关系 课件高二上学期地理中图版(2019)选择性必修一.pptx
- 混凝土结构与砌体结构设计习题集 .pdf
- 统编版语文四年级下册 22.古诗三首 课件(共50张PPT).pptx
- 青海2024行测笔试真题及答案 .pdf
- 2.1 充分发挥市场在资源配置中的决定性作用 课件-高中政治统编版必修二经济与社会.pptx
- 27.巨人的花园 课件(共58张PPT).pptx
- 统编版语文一年级下册5 树和喜鹊 第1课时 课件(共37张PPT).pptx
- 2.1 充分发挥市场在资源配置中的决定性作用 课件政治一轮复习统编版必修二经济与社会.pptx
- 贵港市平南县2024届小升初考试语文试卷含答案 .pdf
- 小学期末考试质量分析 .pdf
最近下载
- 2025年高考地理二轮复习非选择题强化训练(课件).pptx VIP
- (二模)2025年广州市普通高中毕业班综合测试(二)数学试卷(含答案详解).pdf
- 14J938 抗爆、泄爆图集标准.docx VIP
- 降低CRRT治疗非计划下机率.pptx VIP
- 《中国心力衰竭诊断和治疗指南2024》解读(下).pptx
- 《预检分诊》课件.pptx VIP
- 2024年河南省政务服务办事员职业技能竞赛考试题库-下(判断、简答题汇总).docx
- 2025年部编版语文六年级毕业复习知识点.pdf VIP
- 2025年政务服务办事员技能大赛理论考试题库600题(含答案).docx
- 14J938抗爆泄爆图集标准.docx VIP
文档评论(0)