处理机调度与死锁.ppt.ppt

  1. 1、本文档共94页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
处理机调度与死锁.ppt

操作系统 Operating System;第3章 处理机调度与死锁;本章重点:;本章难点:; 高级调度:即作业调度,宏观调度或长程调度。其任务是对那些提交给系统后被收容的作业, 按照一定策略选择出某些作业, 为其分配内存等必要的资源, 建立与之对应的进程, 并将进程的PCB表放入就绪队列中, 使其具备参与竞争使用CPU的权利。作业状态变迁如图3-1所示。 ;低级调度:即进程调度,微观调度或短程调度。其任务是在进入内存并处于就绪队列的进程中, 确定哪个进程真正获得CPU及其使用CPU的时间。用执行指针指向选中进程的PCB表,将它从就绪队列移出并重布现场,使其运行。进程状态变迁如图3-2所示。; 中级调度:将就绪状态细化为内存就绪和外存就绪状态, 阻塞状态细化为内存阻塞和外存阻塞状态后,中级调度完成进程在内存与外存之间的对换。其任务是周期性地将那些在内存??暂时不用的进程换出并放到外存,而将那些在外存上需要运行的进程换入到内存。进程状态变迁如图3-3所示。; 【三级调度模型】;【进程调度程序的功能】: 记录系统中所有进程的状态、优先数和资源的需求情况。 确定调度算法。决定将CPU分配给哪个进程及多长时间。 分配处理机给进程。进行CPU现场的保护和移交,并实现CPU使用权的移交。 处理机是计算机最重要的资源, 如何提高处理机的利用率及改善系统性能, 在很大程度上取决于进程调度(亦称处理机调度)性能的好坏, 进程调度成为操作系统设计中心工作。 ;1.非抢占方式: 在非抢占方式下,调度程序一旦把 CPU分配给某一进程后便让它一直运行下去,直到进程完成或发生某事件而不能运行时,才将CPU分给其它进程。 这种调度方式通常用在批处理系统中。它的主要优点是简单、系统开销小。 2.抢占方式: 当一个进程正在执行时,系统可以基于某种策略剥夺CPU给其它进程。剥夺的原则有:优先权原则、短进程优先原则和时间片原则。 这种调度方式多用在分时系统和实时系统中,以便及时响应各进程的请求。; 进程调度的时机是与进程调度的方式有关的。通常当发现以下情况时,当前运行进程的CPU被收回,需要重新进行进程调度: 正在执行的进程正确完成, 或由于某种错误而终止运行(陷阱或中断); 执行中的进程提出I/O请求, 等待I/O完成时; 在分时系统中,分给进程的时间片用完时; 按照优先级调度时, 有更高优先级进程变为就绪时(抢占方式); 在进程通信或进程同步过程中, 执行中的进程执行了某种原语操作, 如 P (wait)操作、阻塞原语和唤醒原语时, 都可能引起进程调度。; 可从不同的角度来判断处理机调度算法的性能。实际的处理机调度算法选择是一个综合的判断结果。 1) 面向系统的调度性能准则 系统吞吐量:单位时间内处理的进程数。 处理机利用率:CPU利用率=CPU有效工作时间/CPU总的运行时间 各种设备的均衡利用:如CPU繁忙的作业和I/O繁忙(指次数多,每次时间短)的作业搭配。; 周转时间:作业从提交到完成所经历的时间——批处理系统。(公式中Tsi为实际运行时间)。 响应时间:用户输入一个请求(如击键)到系统给出首次响应(如屏幕显示)的时间——分时系统 截止时间:开始截止时间和完成截止时间——实时系统。 公平性:不因作业或进程本身的特性而使上述指标过分恶化。如长作业等待很长时间。 优先级:可以使关键任务达到更好的指标。;易于实现 执行开销比 要设计一个理想的调度算法是一件十分困难的事,在实际系统中, 调度算法往往折衷考虑。大多数操作系统都采用比较简单的调度算法。 ;1.先来先服务FCFS(先进先出调度算法,FIFO) 【算法思想】:最简单的算法 按照进程进入就绪队列的先后次序,分派CPU; 当前进程占用CPU,直到执行完或阻塞,才出让CPU(非抢占方式)。 在进程唤醒后(如I/O完成),并不立即恢复执行,通常等到当前进程让出CPU。 【特点】: 比较有利于长作业,而不利于短作业。 有利于CPU繁忙的作业,而不利于I/O繁忙的作业。;先来先服务算法的实现过程如图4-6所示。 设置信号量: 就绪队列互斥信号量s,初值为1; 就绪队列中进程个数n,初值为0。;2.短进程优先调度算法(SJF,SPF) 【算法思想】:选择就绪队列中估计运行时间最短的进程投入运行。通常后来的短作业不抢先正在执行的作业。 【优点】: 比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间; 提高系统的吞吐量; 【缺点】: 对长作业非常不利,可能长时间得不到执行; 未能依据作业的紧迫程度来划分执行的优先级; 难以准确估计作业(进程)的执行时间,从而影响调

文档评论(0)

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

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

1亿VIP精品文档

相关文档