- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[计算机软件及应用]操作系统课件第2章
repeat produce an item in nextp; send(consumer,nextp); until false; repeat receive(producer,nextc); consume the item in nextc; until false; … … … 2.间接通信方式 间接通信方式指进程之间的通信需要通过作为共享数据结构的实体。该实体用来暂存发送进程发送给目标进程的消息;接收进程则从该实体中取出对方发送给自己的消息。通常把这种中间实体称为信箱。消息在信箱中可以安全地保存,只允许核准的目标用户随时读取。因此,利用信箱通信方式,既可实现实时通信,又可实现非实时通信。 系统为信箱通信提供了若干条原语,分别用于信箱的创建、撤消和消息的发送、接收等。 (1) 信箱的创建和撤消。进程可利用信箱创建原语来建立一个新信箱。创建者进程应给出信箱名字、信箱属性(公用、私用或共享);对于共享信箱,还应给出共享者的名字。当进程不再需要读信箱时,可用信箱撤消原语将之撤消。 (2) 消息的发送和接收。当进程之间要利用信箱进行通信时,必须使用共享信箱,并利用系统提供的下述通信原语进行通信: Send(mailbox,message); 将一个消息发送到指定信箱; Receive(mailbox,message); 从指定信箱中接收一个消息; 信箱可由操作系统创建,也可由用户进程创建,创建者是信箱的拥有者。据此,可把信箱分为以下三类。 Var mutex,empty,full: semaphore:=1,n,0; buffer:array[0,…,n-1] of item; in,out: integer:=0,0; begin parbegin proceducer: begin repeat producer an item nextp; wait(empty); … … wait(mutex); buffer(in):=nextp; in:=(in+1) mod n; signal(mutex); signal(full); until false; end consumer: begin repeat wait(full); wait(mutex); nextc:=buffer(out); out:=(out+1) mod n; signal(mutex); signal(empty); consumer the item in nextc; until false; end parend end 在生产者—消费者问题中应注意:首先,在每个程序中用于实现互斥的wait(mutex)和signal(mutex)必须成对地出现;其次,对资源信号量empty和full的wait和signal操作,同样需要成对地出现,但它们分别处于不同的程序中。例如,wait(empty)在计算进程中,而signal(empty)则在打印进程中,计算进程若因执行wait(empty)而阻塞,则以后将由打印进程将它唤醒;最后,在每个程序中的多个wait操作顺序不能颠倒,应先执行对资源信号量的wait操作,然后再执行对互斥信号量的wait操作,否则可能引起进程死锁。 2.利用AND信号量解决生产者—消费者问题 对于生产者—消费者问题,也可利用AND信号量来解决,即用Swait(empty,mutex)来代替wait(empty)和wait(mutex);用Ssignal(mutex,full)来代替signal(mutex)和signal(full);用Swait(full,mutex)来代替wait(full)和wait(mutex),以及用Ssignal(mutex,empty)代替Signal(mutex)和Signal(empty)。利用AND信号量来解决生产者—消费者问题的算法描述如下: Var mutex,empty,full: semaphore:=1,n,0; buffer:arra
您可能关注的文档
- [计算机软件及应用]复合材料力学Lecture-3.ppt
- [计算机软件及应用]多功能手机制作.ppt
- [计算机软件及应用]多媒体.doc
- [计算机软件及应用]多媒体数据库技术.ppt
- [计算机软件及应用]多态性.ppt
- [计算机软件及应用]基于信息化的内部管控体系建设素材-1.ppt
- [计算机软件及应用]多线程下载工具代码.doc
- [计算机软件及应用]多线程IOJDBC.ppt
- [计算机软件及应用]多媒体信息发布系统.pdf
- [计算机软件及应用]大学师生管理系统.doc
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
最近下载
- 《国际会计科目中英文对照》.docx VIP
- #财税政策激励企业技术创新的理论与实证分析.pdf VIP
- 人教版小学二年级(上)期末数学试卷.doc VIP
- (高清版)DB11∕T 1939-2021 捕食性天敌繁育及释放技术规范.pdf VIP
- 2025年春新人教版化学九年级下册全册教案.pdf
- TCAQ10201-2024质量管理小组活动准则_可搜索.pdf VIP
- 《GB_T 43789.32-2024电子纸显示器件 第3-2部分:光电性能测试方法》专题研究报告.pptx VIP
- DB11T 1939-2021捕食性天敌繁育及释放技术规范.docx VIP
- 2025至2030中国生猪行业发展分析及投资前景与战略规划报告(版).docx VIP
- 化工生产安全法律法规解析.pptx VIP
原创力文档


文档评论(0)