网站大量收购独家精品文档,联系QQ:2885784924

九江学院操作系统课件第二章 进程管理.ppt

  1. 1、本文档共112页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.5.1 与时间有关的错误 2.5.2 临界区 2.5.2 临界区 2.5.3 进程的互斥 2.6进程同步 进程同步的基本概念 异步环境:相互合作的一组并发进程中每一个进程都以各自独立的、不可预知的速度向前推进,但它们又需要密切合作, 以实现一个共同的任务,即彼此“知道”相互的存在和作用。 2.7 进程通信(communication) 进程通信:指进程间的信息交换。 按通信内容可以划分为2种 低级通信:进程之间控制信息的交换称为低级通信。 一般只传送一个或几个字节的信息,达到控制进程执行速度的作用。(进程的同步和互斥) 高级通信:用户可以直接利用操作系统所提供的一组通信命令,高效地传送大量数据的一种通信方式。 共享存储器系统:相互通讯的进程通过共享数据结构和存储区进行通讯,因而可进一步分为: ?基于共享数据结构的通讯方式:(低效,只适于传递少量数据) ?基于共享存储区的通讯方式: 为了传送大量数据,在存储区中划出一块共享存储区,诸进程可通过对共享存储区进行读或写数据实现通讯。 在消息传递系统中,进程间的数据交换是以消息(message,在计算机网络中又称报文)为单位。程序员直接利用系统提供的一组通讯命令(原语)来实现通讯。因其实现方法的不同,又可分为: 直接通信方式: 发送进程直接将消息发送给接收进程,并将它挂在接收进程的消息缓冲队列上。接收进程从消息缓冲队列中取得消息。故称为消息缓冲机制。 间接通信方式: 发送进程将消息发送到某个中间实体(一般称为信箱)中,接收进程从中取得消息,所以称为信箱通讯方式,相应的系统称为电子邮件系统。 间接通信(信箱通信) ? 信(邮)箱 信箱是一种数据结构,逻辑上它分成两部分:信箱头和由若干格子组成的信箱体。 在利用信箱通信时,在发送进程和接收进程之间,存在着四种关系: ?一对一关系:即可以为发送进程和接收进程建立一条专用的通信链路; ?多对一关系:多个用户进程与允许提供服务的进程进行交互,也称客户/服务器交互; ?一对多关系:允许一个发送进程与多个接收进程交互,使发送进程用广播的形式,发送消息; ?多对多关系:允许建立一个公用信箱,让多个进程都能向信箱投递消息,也可取走属于自己的消息。 1.信箱通信是一种( )通信方式: A.直接通信; B.间接通信; C.低级通信; D.信号量 2.在消息缓冲通信方式中,临界资源为( ) A.发送进程; B.消息队列; C.接收进程; D.信箱 P操作的顺序是很重要的,如果把生产者和消费者进程中的两个P操作交换顺序,则会导致错误。而V操作的顺序却是无关紧要的。一般来说,用于同步的信号量上的P操作在前执行,而用于互斥的信号量上的P操作在后执行。 读者-写者问题利用信号量解决读者和写者问题 问题描述:在计算机系统中,有些文件是可以供若干进程共享的。假定有某个共享文件F,系统允许进程对文件F读或修改(写),但规定: (1)多个进程可以同时读文件F (2)任一个进程在对文件F进行修改(写)时不允许其他进程对文件进行读或修改 (3)当有进程在读文件时不允许任何进程去修改(写)文件。 一个文件可能被多个进程共享,为了保证读写的正确性和文件的一致性,系统要求,当有读者进程读文件时,不允许任何写者进程写,但允许多读者同时读;当有写者进程写时,不允许任何其它写者进程写,也不允许任何读者进行读。 读者-写者问题利用信号量解决读者和写者问题 单纯使用信号量不能解决读者写者问题,必须引入计数器rc 对读进程计数,mutex是用于对计数器rc操作的互斥信号量,W表示是否允许写的信号量,用于管理该文件的同步工作可描述如下: W,rc:integer; mutex:integer; rc:=0; W:=1; Mutex:=1; cobegin 信号量机制作为同步工具是卓有成效的,但作为通讯工具则不够理想,(?效率低。?通讯对用户不透明。) 进程的同步与互斥是一种通讯方式,一进程可通过修改变量或信号量告知另一进程,它是否可以继续执行下去,利用生产者——消费者算法,生产者进程可以传送一批数据给消费进程,或者说生产者通过缓冲区与消费者进行通讯,但P、V操作只能传递信号,信号本身不包含任何数据,还容易导致进程死锁,因此,称这些同步机构为低级通讯机构. 高级通信的三种方式: 1、共享存储器系统 2、消息传递系统 3、管道通信系统---共享文件通信 消息缓冲通

您可能关注的文档

文档评论(0)

ormition + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档