[计算机软件及应用]5-处理机调度与死锁.pptVIP

[计算机软件及应用]5-处理机调度与死锁.ppt

  1. 1、本文档共36页,可阅读全部内容。
  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文档。上传文档
查看更多
[计算机软件及应用]5-处理机调度与死锁

多级队列调度 多级队列调度是根据进程的性质或类型将就绪进程分为若干 个独立子队列,每个进程固定地分属于一个队列。 不同的队列可采用不同的调度算法。并且,每个队列可以设 置一个优先级,优先级高的队列优先进行调度。 3.3.3 时间片轮转( Round-robin ) 前面几种调度算法的局限性 短进程优先、响应比高者优先都需要估计进程的预期执行时间, 如果估计不准确,将会影响进程调度结果和系统性能。 由此,可以根据进程的执行历史信息,而不是去预测进程的预期执行 时间进行调度。 多级反馈队列调度 根据进程执行历史调整调度方式。无须了解各进程的预期执行时间。 设置多个优先权不同的就绪队列,允许进程在多个就绪队列间移动。 结合优先级调度和时间片轮转调度方法。 3.3.3 时间片轮转( Round-robin ) 多级反馈队列的调度过程 (1)当新进程进入内存后,首先放入到第一个就绪队列末尾,按照FCFS原则进行调度。如果该进程在一个时间片内能够完成,则撤离系统;否则转到第二个就绪队列。以后按照这种方式进行调度。如果直到最后一个队列,还没有完成,则该进程一直处在最后一个队列中,按照时间片调度方式进行调度,直至完成。 (2)只有当第i-1个就绪队列为空时,系统才会调用第i个就绪队列。 3.3.3 时间片轮转( Round-robin ) 3.3.3 时间片轮转( Round-robin ) 多级反馈队列调度实例 优先级: R0R1R2…Ri…Rn 时间片长度: S0S1S2…Si…Sn 多级反馈队列性能 适合终端型用户需求 终端用户提交的属于交互性作业和短作业,通常能够在第1个队列对应的一个时间片内完成。响应时间短。 短批处理作业 若执行时间与交互性作业相当,可在第1个就绪队列时间内完成,对于稍长的作业,也能保证在前3个就绪队列中完成。 长批处理作业 在兼顾短作业情况下,能保证长批处理作业得到及时处理。 3.3.3 时间片轮转( Round-robin ) 算法名称 算法描述 性能分析 FCFS 先来先服务 从就绪队列中选择最先到达的进程。 适合长作业,不利于短作业;使短作业的周转时间过长。 SPF 短进程优先 从就绪队列中选择估计运行时间最短的进程。 有效降低进程的平均周转时间、提高系统的吞吐量。但是,存在以下问题:1.长作业可能长时间得不到调度。 2.不考虑优先级,无法保证紧迫进程及时处理。 3.进程长短根据估计而定,不能真正做到短进程优先。 时间片轮转 每个进程依次获取时间片进行处理。 太短会导致进程切换频繁;太长则无法满足用户对响应时间的要求。设定时,可以考虑以下因素:1.系统对响应时间的要求;2.就绪队列中进程数目;3.系统的处理能力。 PSA 优先权 将处理机分配给就绪队列中优先权最高的进程。 利用动态优先级方法,进程优先级随着执行的推进而改变,可以获得较好的调度性能。如随着进程等待时间的增加,其优先级以速率a增加。 高响应比优先 通过动态优先权机制,进程的优先权等于其响应比。 等待时间:W;要求服务时间:S 优先权=(W+S)/ S = 1+W/S = 响应比 等待时间W相同,S越短优先级越高; 要求服务时间S相同,等待时间越长,优先级越高。 问题:很难确定进程的要求服务时间。 多级反馈队列 1.根据进程执行历史调整调度方式。2.设置多个优先权不同的就绪队列,允许进程在队列间移动。3.结合优先级和时间片轮转调度方法 适合以下需求:1.终端型用户;2.短批处理作业3.长批处理作业: 本节回顾 * * * * * * * * * * * * * * * * 优先级按照0,1,2,n逐步降低。时间片长度按照0,1,2,n逐步增加。 新进程首先进入就绪队列0;新进程具有最高优先级,按照时间片原则和先来先服务两种算法进行调度,设时间片长度为S0.如果进程执行完成,退出,否则,进入就绪队列1(优先级降低)。 那么就是说,长进程(一个时间片没有执行完成)进入就绪队列1的可能性要比短进程要大。 依次调度就绪队列0进程中的其它进程。如果就绪队列0中的进程全部执行完成(不管是否执行完成,或者调入到下一级就绪队列)就是说,只有当就绪进程队列0中没有进程时,才调度就绪进程队列1中的进程。 就绪队列1是就绪队列0中的进程,如果给就绪队列1中的进程分配时间片,其长度为S1。也可以设为S0。但是能落入到1队列中的进程,肯定是较长进程,所以其在S0时间片完成的可能性比给一个S1(S1S0)时间片可能性低。如果一个进程在就绪队列1中的一个时间片S1中还没有完成,就落入到就绪队列2中。 就绪队列2,3,…n。同样按照这种方式时间片和FCFS进行调度。但需要注意,只有当

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档