- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章进程管理通信
;3.4 进程通信(communication);3.4 进程通信;3.4.1 概念;一、单机系统中进程间通信的四种形式 P62
主从式、会话式、 消息或邮箱机制、
共享存储区方式
二、高级通讯机制类型
1 共享存储器系统(Shared-Memory System)
2 消息传递系统(Message passing System)
3 管道(pipe)通信系统(共享文件方式)
;1、共享存储器系统;;2、消息传递系统;;思考;3、管道通信;两通信进程必须满足下列条件
在发送进程把消息写入缓冲区和把缓冲区挂入消息队列时,
应禁止其他进程对缓冲区消息队列的访问。同理,接收进程取消息时也禁止其他进程访问缓冲区消息队列
2 当缓冲区中没有信息存在时,接收进程不能接收到任何消息;在操作系统空间设置一组缓冲区。
当发送进程需要发送消息时,执行send系统调用,产生访管中断,进入操作系统。
操作系统为发送进程分配一个空缓冲区,并将所发送的消息从发送进程copy到缓冲区中,然后将该载有消息的缓冲区连接到接收进程的消息链链尾,如此就完成了发送过程。
发送进程返回到用户态继续执行。;;PCB; type messageBuffer=record
sender ;//发送者ID
size ;//消息长度
text ;//消息正文
next ;//消息队列指针
end
;PCB中有关通信的数据项;设公用信号量mutex,并置初值为1
设SM为接收进程的私用信号量,置初值为0;begin
P(SM) //等待接的消息的个数
P(mutex) //使用公用缓冲区
摘下消息队列中的消息m
将消息队列m从缓冲区复制到接收区
释放缓冲区
V(mutex) // 释放公用缓冲区
end;1.? 信(邮)箱
信箱是一种数据结构,逻辑上它分成两部分:信箱头和由若干格子组成的信箱体。
;;Send实现;Receive实现;
消息缓冲通信机构是以内存缓冲区为基础。
管道是以文件系统为基础。
有名管道
无名管道
; ;管道通信的思想
(1)发送进程可以源源不断的从pipe一端写入数据流,在规定的pipe文件的最大长度(如4096字节)范围内,每次写入的信息长度是可变的
(2)接收进程在需要时可以从pipe的另一端读出数据,读出单位长度也是可变的
;1.? Pipe的建立和使用方式
pipe 文件在使用之前,必须先由使用者建立并打开,
建立pipe的主要工作是在系统打开文件表中建立该pipe的两个表目,
一个表目用于控制该pipe的写操作(写入端)
另一表目用于控制该pipe的读操作(读出端)此时,pipe本身还是个空白文件。 ; 系统文件 write(fd[1],buf,size)
功能:把buf中的长度为size字符的消息送入管道入口fd[1]
fd[1]—pipe入口
buf:存放消息的空间
size :要写入的字符长度
系统文件 read(fd[0],buf,size)
fd[0]――pipe的出口
功能:从pipe出口fd[0]读出size字符的消息置入 buf中。
; pipe只允许建立者及其子进程使用。一进程及其所有‘子孙’构成一个进程族,同族中的多个进程可共享一个pipe,为了避免混乱,通常一个pipe为两个进程专用,且一个进程只用其写入端,另一进程只用其读出端。;1.? Pipe文件的读写操作的同步与互斥
如同消息缓冲一样,在对pipe文件进行读写操作过程中要对发送进程和接送进程实施正确的同步与互斥以确保通信的正确性.
接收进程:当接收进程读pipe时,若发现pipe为空,则进入等待状态。一旦有发送进程对该pipe执行写操作是唤醒等待进程.
;发送进程:当发送进程在写pipe时,总是先按pipe文件的当前长度设置,如果pipe文件长度已经到4096字节,但仍有一部分信息没有写入,则系统使要求写pipe的进程进入睡眠状态,当读pipe进程收走了全部信息时,此时,系统再唤醒待写的进程。它将余下部分信息继续送入pipe中。
您可能关注的文档
- 第3章案例_联想公司财务报表分析.ppt
- 第3章新拌混凝土的工作性能.ppt
- 第3章液压流体力学基础103.ppt
- 第3章热力学第2定律1.ppt
- 第3章热力学第2定律3.ppt
- 第3章溷凝土结构设计的基本原则.ppt
- 第3章清华大学出版社第5版阎石.ppt
- 第3章热力学第2定律12.ppt
- 第3章物业管理公司.ppt
- 第3章牛顿运动定律第2课时.ppt
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
最近下载
- 2024年刑法知识考试题库及答案【基础+提升】.pdf VIP
- 支气管镜诊疗操作相关大出血的预防和救治专家共识.pdf
- 2022年太原理工大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案).docx VIP
- 2023年太原理工大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案).docx VIP
- PP板_MSDS.doc
- 土木工程识图9剖面图和断面图.ppt
- 2024届高三英语一轮复习:说题比赛 ---2021年新高考II卷语法填空课件.pptx VIP
- 长输管道施工组织方案.doc
- 大职赛生涯闯关参考答案.docx VIP
- AST_中央企业班组长岗位管理能力资格认证(三期模拟1030)-0019.pdf
文档评论(0)