OS第二章3.pptVIP

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
进程管理 Operating System 2.5 进程通信 进程通信定义 进程间的信息交换称为进程通信 低级通信:进程间交换少量信息的通信方式,例如进程间的互斥和同步 高级通信:用户可以直接利用OS所提供的一组通信命令,高效的传送大量数据的通信方式,通信过程对用户透明 信号量机制作为通信工具有严重问题 效率低:每次存取的单位数据量小 通信对用户不透明:通信过程是用户手工实现,OS只提供共享存储器 进程通信的类型 共享存储器系统 消息传递系统 管道通信 共享存储器系统 相互通信的进程共享某些数据结构或存储区,进程通过这些共享空间进行通信 基于共享数据结构的通信方式:公用数据结构设置及进程同步处理需要程序员手工完成,属于低级通信方式 基于共享存储区的通信方式:诸进程通过对系统中的一块共享存储区的读写操作实现通信,属于高级通信方式 消息传递系统 应用最广泛的进程通信机制 进程间数据交换以格式化的信息为单位,在计算机网络中,这种信息称为报文 程序员使用通信原语完成通信,其实现细节被隐藏在这些系统提供的原语中,简化了通信程序的编写复杂性 分为直接通信方式和间接通信方式 微内核与服务器程序的通信使用该方法 可满足多处理机OS、分布式OS、计算机网络的通信要求 管道通信 管道:用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件(pipe文件) 写进程以字符流形式向共享文件提供大量数据的输入,读进程则从该共享文件中读取 管道机制具有三方面协调能力 互斥:共享文件同一时刻只可有一个使用者 同步:读写进程完成当前工作后唤醒对方,自身休眠 互相确认对方存在:在对方存在的情况下才有通信的必要 消息传递的实现方法 直接通信方式 发送进程利用OS提供的发送原语直接发送消息给接收进程 发送进程和接收进程都以显式方式提供对方的标识符 Send(receiver,msg) //发送消息给接收进程 Receiver(sender,msg) //接收发送进程传来的消息 一个接收进程与多个发送进程通信时,接收原语中的源进程参数是完成通信后的返回值 Receive(id,msg) 消息传递通信的实现方法 间接通信方式 进程间通信通过作为共享数据结构的实体(信箱)实现 信箱中的消息只允许合法用户随时读取,其他用户只可写入 信箱操作原语用来实现信箱创建、撤销和消息发送、接收等工作 创建信箱时要提供信箱名、属性等信息 进程使用共享信箱实现通信 Send(mailbox,msg) receive(mailbox,msg) 消息传递通信的实现方法 私有信箱 用户进程创建,用户可读,他人只写,使用单向通信链路信箱实现,用户进程结束时该信箱随之消失 公用信箱 OS创建,所有核准用户可读写,使用双向通信链路信箱实现,在系统运行期间始终有效 共享信箱 由进程创建并指明共享性,同时指定共享进程名,创建者和共享者都有权取走发给自己的消息 消息传递通信的实现方法 利用信箱通信的发送者和接受者间的关系 1:1 :为二者建立专用信箱,避免干扰 *:1 :提供服务的进程与多个用户交互(C/S交互) 1:* :一个发送者与多个接收者交互,使用广播方式 *:* :建立公用信箱,多个进程可以读写 消息传递系统实现中的问题 消息传递系统实现过程中需要注意以下问题 通信链路 消息格式 进程同步方式 通信链路 链路建立方式 显式建立、显式拆除:用于计算机网络中 隐式建立:发送者使用系统提供的发送原语通知系统为其建立链路,用于单机系统 链路连接方式 点对点连接 多点连接 通信链路 通信方式 单向链路 双向链路 链路容量 无容量链路:无缓冲区 有容量链路:有缓冲区缓存消息 消息格式 单机系统中,消息格式简单; 网络系统中,消息格式复杂 消息分为消息头和消息正文两部分,前者包括消息传输时所需的控制信息,后者是实际发送的数据 在不同的OS中,不同长度消息共存 定长格式:减少处理与存储开销,处理快速 变长格式:增加处理与存储开销,方便用户 进程同步方式 进程间通信时,应辅以进程同步机制,使诸进程协调通信 完成发送或接收后可能出现三种情况 发送和接收都阻塞:进程间汇合同步,有消息时传递,无消息时同时阻塞 发送不阻塞、接收阻塞:发送者尽量快而迅速的发送消息,平时处于阻塞状态的接收者收到消息才唤醒,如多个用户共享一个打印服务 发送和接收均不阻塞:发送者和接受者均忙于自身事务,直到无法继续才阻塞,如发送进程与接收进程间关联一个长度为n的消息队列 消息缓冲队列通信机制 用于本地进程通信,发送者利用send原语发送消息给接收者,接收者利用receive原语接收消

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档