第2章处理器管理(9-12).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.3.5 进程唤醒 1)请求系统服务得到满足 因请求服务得不到满足的等待队列中的进程,得到相应的服务要求时,处于等待队列中的进程就被唤醒。 1.引起进程唤醒的事件 1.引起进程唤醒的事件 2)启动某种操作完成 处于等待某种操作完成的等待队列中的进程,其等待的操作已经完成,可以执行其后续命令,则必须把它唤醒。 1.引起进程唤醒的事件 3)新数据已经到达 对于相互合作的进程,如果一个进程需要另一个进程提供的数据已经到达,则把因此而处于等待的进程唤醒。 1.引起进程唤醒的事件 4)有新工作可做 系统中的具有特定功能的系统进程,接收到新的任务时,就必须唤醒它。 2.进程唤醒的过程 一旦操作系统发现了要求唤醒进程的事件后,便调用进程唤醒原语,按照下列步骤唤醒指定的进程。 1)从等待队列中找到该进程 2)修改该进程控制块中的相关内容,把等待状态改为就绪状态,删除等待原因等。 3)把进程控制块插入到就绪队列中。按照就绪队列的组织方式,把被唤醒的进程的进程控制块插入到就绪队列中。 * 功 能:唤醒某一处于等待队列当中的进程 入口信息:被唤醒进程的名字 2.4 进程同步机制 操作系统中引入进程后,虽然改善了资源的利用率,提高了系统的吞吐量。 但是,由于进程的异步性,也会给系统造成混乱。因此,必须有效地协调各个并发进程间的关系,从而使它们能正确的执行。 本节主要介绍进程的同步与互斥的实现机制。 2.4.1 进程的并发性 在并发运行的系统中,若干个作业可以同时运行,而每个作业又需要有多个进程协作完成。在这些同时存在的进程间具有并发性,称之为“并发进程”。 进程间的关系可以分为: 1、资源共享关系 2、相互合作关系 1、资源共享关系 系统中的某些进程需要访问共同的资源,即当一个进程访问共享资源时,访问该共享资源的其他进程必须等待,当这个进程使用完后,其他进程才能使用。这时要求进程应互斥地访问共享资源。 2、相互合作关系 系统中的某些进程之间存在相互合作的关系,即一个进程执行完后,另一个进程才能开始。否则,另一个进程不能开始,这时就要保证相互合作的进程在执行次序上要同步。 2.4.2 进程同步的概念 对于相关进程间的同步和互斥,必须进行有效的控制。 这种控制涉及几个基本概念,即临界资源、临界区、进程同步和进程互斥的概念。 1、临界资源 通常一次仅允许一个进程使用的资源称为临界资源,同时,也将一个进程访问的这种临界资源的那段程序代码称为临界区。这里的临界资源的含义是广义的,它既包括物理实体资源,如打印机、磁带机等,也包括软件资源,如程序中的数据结构、表格和变量、文件等。 操作系统中的进程就绪队列就是一种在一个时刻只能允许一个进程访问的临界资源。所以,进程的互斥就是两个进程不能同时进入访问同一临界资源的临界区。 2、临界区(critical section) 临界区是进程执行程序中的对临界资源访问的那一段程序,这段程序的进入执行,需要有一定的原则来协调。 也就是说,如果有若干进程都欲进入临界区,它们不能互相阻塞,使得谁也进不了临界区,应当在有限时间内让一个进程进入临界区。但是,每次至多有一个进程进入临界区,并且在临界区中只能停留有限的时间。 要实现这样的原则,操作系统的进程同步机制必须遵循如下准则。 3、进程同步与互斥 由于多个进程对资源的共享性,使系统中本来没有逻辑关系的进程因为互相竞争资源而产生了制约关系。系统中各个进程之所以有这种关系,主要原因是这种关系的基本形式是:“进程—资源—进程”,这是进程间通过资源而发生的一种间接关系。 由于系统对进程所请求的许多资源常常是互斥满足的,所以这种关系表现为互斥(Mutual Exclusion)关系(即竞争关系)。又由于系统中为了完成同一个任务而创建了若干进程,它们之间必然是伙伴进程(进程合作),如某作业的一组并行进程共同完成一项任务,有时它们要在某点上互相等待和互通消息,这种关系的基本形式是“进程—进程”,这是进程之间的一种直接关系,表现了进程之间的协同工作的特性,称为进程间的同步(synchronize)关系。 例如,现有A、B两个进程,A进程负责输入数据并送入缓冲区;B进程负责加工缓冲区中的数据并输出,为了保证这两个进程之间能够协同工作,则B进程必须等待A进程发来缓冲区已满的信号后才开始工作;A进程必须等待B进程发来缓冲区中的数据加工并输出后才能再次输入下一批数据,这体现了进程之间的同步关系;又由于这两个进程共用同一个缓冲区,因此,它们对缓冲区的操作还应该做到互斥。 2.4.3 进程同步机制应遵循的原则 为了实现进程的同步与互斥,可以利用软件方法,也可以在系统中设置专门的同步机制来协调各个进程。但是,所有的同步机制都必

文档评论(0)

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

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

1亿VIP精品文档

相关文档