第四五章操作系统.docVIP

  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文档。上传文档
查看更多
第四五章操作系统

第四章 调度与死锁 一、主要内容 1.调度的基本概念 2.几种调度算法 3.死锁 1.调度的基本概念 1.1 调度的类型 一个作业从提交直到完成,往往经历下列三种调度: 1)高级调度 又称为作业调度或长程调度。其主要任务是按照一定的原则,对外存上处于后备状态的作业进行选择。 2)中级调度 又称为中程调度。其实就是内外存对换。 3)低级调度 又称为进程调度、短程调度。 1.2 低级调度 低级调度决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。进程调度可以采用下列两种方式: 1)非抢占方式 采用这种方式时,一旦处理机分配给某进程,便让该进程一直执行,直至该进程完成或或发生某事件而被阻塞时,才让出处理机,决不允许某进程抢占已经分配出去的处理机。 2)抢占方式 a 时间片原则 b 优先权原则 c 短作业优先原则 1.3 调度队列模型 在OS中的任何一种调度,都将涉及到进程队列,由此形成了三种类型的调度队列模型。 1)仅有进程调度的调度队列模型 在分时系统中通常仅设置了进程调度,用户键入的命令和数据都直接送入内存。对于命令,由os为之建立一个进程,并将它排在就绪队列的末尾,然后按时间片轮转方式运行。 2)具有高级和低级调度的调度队列模型 与上一模型区别在于: a 在os中不仅引入了进程调度,而且还引入了作业调度。后者从 外存的后备队列中选择一些批作业调入内存,为之创建进程后,送入就绪队列; b 在os中设置多个阻塞队列。 3)同时具有三级调度的调度队列模型 当在os中引入中级调度后,我们可把进程的就绪状态分为内存就绪状态、外存就绪状态。类似地,也把阻塞状态进一步分成内存阻塞和外存阻塞两种状态。在调出操作的作用下,可使内存就绪变成为外存就绪、内存阻塞变为外存阻塞;中级调度的作用下,可使外存就绪变为内存就绪。 1.4 选择调度方式和算法的若干准则 选择调度方式和调度算法的准则,有的面向用户的,有的面向系统的。 1)面向用户的准则 a.周转时间短 b.响应时间快 c.截止时间的保证 d.优先权准则 2)面向系统的准则 a.系统吞吐量高 b.处理机利用率好 c.各类资源的平衡利用 2.几种调度算法 1) 先来先服务调度算法 这是一种最简单的调度算法,即按照进程进入队列的先后次序来分配处理机。先来先服务算法属于非剥夺调度方式,一旦一个进程占有处理机就一直进去下去,直到该进程完成其工作,或因等待某一事件不能继续执行时,才释放处理机。采用这种方式,若一个运行时间长的作业先占有了处理机,则会使一些晚到的、运行时间短的作业等待的时间过长,引起短作业用户的不满。因此常作为一种辅助调度算法使用。 2) 短作业/进程(SJF/SPF)优先算法 该算法是指短作业或短进程优先调度算法,是选择就绪队列中估计运行时间最短的进程进入执行。它即可采用抢占方式也可采用非抢占方式。由于估计的运行时间不一定准确,因而它不一定能真正做到短作业优先。 3)高响应比优先调度(HRRN)算法 在批处理系统中,如果能为每个作业引入动态优先权,并使作业的优先级随着等待时间的增加而以速率a提高,则长作业在等待一定时间后,必然有机会分配到处理机。该优先权的变化规律可描述为: 优先权=(等待时间+要求服务时间)/要求服务时间 由于等待时间与服务时间之和,就是系统对该作业的响应时间,故该优先权又相当于响应比Rp. Rp=(等待时间+要求服务时间)/要求服务时间=响应时间/要求服务时间 4)最高优先权优先调度算法 这是一种最常用的进程调度算法,即把处理机分配给优先权最高的进程。进程的优先权用于表示进程的重要性及运行的优先性。通常分为:静态优先权和动态优先权。 静态优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。确定静态优先权的依据有进程的类型、进程所使用的资源、进程的估计运行时间等因素。 动态优先权是指在创建进程时,根据系统资源的使用情况和进程的当前特点确定一个优先权,在进程运行中再根据情况的变化调整优先权。一般根据进程占有cpu时间的长短、进程等待cpu时间的长短等因素确定。占有处理机时间愈长,则优先权越低,等待时间越长,优先权越高。 5) 时间片轮转调度算法 在这种调度算法中,系统将所有就绪进程按到达时间的先后次序排成一个队列。进程调度程序总是选择队列中的第一个进程执行,且仅能执行一个时间片。在

文档评论(0)

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

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

1亿VIP精品文档

相关文档