操作系统 调度.ppt

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

* 第三章 处理机调度 第3章 处理机调度 §1 调度级别 §2 调度的功能、时机及方式 §3 调度原则与评估标准 §4 调度算法 §5 调度的实现 §1 调 度 级 别 1.高级调度 即作业调度。它决定允许哪些作业可参与竞争CPU和其它系统资源,从状态观点,就是将一个或一批作业从后备状态变为运行状态。一个作业一旦被高级 调度选中,便可获得所需要的基本内存和设备资源,并被装入内存,此后就以进程形式参与并发运行,与其它进程竞争CPU。换言之,高级调度决定给哪个作业分配一台虚拟处理机,获得虚拟处理机的作业将在该虚拟处理机上顺序执行。从这个意义上说,高级调度进行的是虚拟处理机的分配,即CPU的宏观调度,故高级调度亦称宏观调度。 2中级调度 中级调度决定哪些进程可参与竞争CPU,从状态观点,就是将进程从活动态变为静止的挂起态,或者将进程从挂起态变为就绪态或等待态。这主要是为了短期调整系统负荷,以缓和内存使用紧张的矛盾。中级调度的实质是执行“挂起”和“激活”操作;挂起一个进程是把该进程的实体(程序和数据)从内存迁移到外存的专门区域,称为交换区,并释放该进程占用的用户内存区,这称为“换出”;反之,激活一个进程是把该进程的实体从外存交换区迁移到内存,这称为“换进”。故中级调度也常称为进程交换,通常仅用于分时系统。 3低级调度 即进程调度。它决定哪个进程可获得物理CPU,从状态观点,就是将某个进程从就绪态变为执行态。被低级调度选中的进程将实际获得CPU,并可立即在物理CPU上执行它的程序。因此,低级调度是处理机三级调度中的终结调度,亦称CPU的微观调度。 图3-1 处理机的三级调度 §2 调度的功能、时机及方式 2.1 作业调度的功能与时机 (1)按照某种调度算法(即调度策略),根据系统资源的当前使用情况和后备作业对资源的需求,挑选一个或多个后备作业投入运行; (2)为选中的作业分配基本的内存和设备资源,这通过调用内存分配程序和设备分配程序来完成; (3)为选中的作业建立进程,将进程实体装入内存,这通过调用建立进程原语来实现。 一般来说,在下列情况下将启动作业调度: (1)设m为系统支持的在主机上运行的最大作业数(也称道数),n为在主机上运行的当前作业数。如果n<m,且存在后备作业,则启动作业调度; (2)当一作业运行终止而被撤销后,如果存在后备作业,则立即启动作业调度崐; (3)在分时系统中,当一用户在某终端上通过交互会话被核准其注册的登录作业名及其口令后,立即启动作业调度。 2.2 进程调度的功能与时机 启动进程调度的时机可归结为: (1)现行进程执行完它的当前CPU时值时,这包括现行进程执行完毕而终止或现行进程因等待某个事件而自行阻塞,此时需要将CPU分配给一个新的就绪进程; (2)在采用剥夺调度方式的系统中,当发生了某种剥夺事件,例如,当发生了时间片中断或有比现行进程具有更高优先级的进程进入了就绪队列时,此时系统要回收现行进程占用的CPU并进行重新调度。 2.3 调度方式 一进程在CPU上的一次连续执行过程称为该进程的一个CPU周期。一个CPU周期由进程自我终止。当进程需等待某个事件而进入等待态时,便终止了它的当前CPU周期。待等待事件发生后,进程将开始下一个CPU周期。进程执行完毕进入停止状态则终止了它的最后一个CPU周期。一个进程在其并发运行过程中通常有若干个离散的且长短不等的CPU周期。例如,一进程需要在CPU上执行的总时间为1 s,在100 ms、450 ms、600 ms的执行点处它分别要等待三个事件而暂停执行,即该进程有四个分别为100 ms、350 ms、150 ms以及40 ms的CPU周期时值。当现行进程执行完它的一个CPU周期时,系统应及时把CPU转交给另一个进程去执行它的CPU周期,这是导致进程调度的基本原因,也是实现多部件并行和多进程并发的基本要求。 进程调度方式包括剥夺式与非剥夺式。在剥夺方式下,当现行进程正在执行它的一个CPU周期期间,系统有权强行分割该进程的当前CPU时值,即强行剥夺现行进程正占用的CPU,并把CPU分配给另一进程,换言之,如果一个进程的一个CPU周期可能被分割成两个或更多个CPU周期,则系统采用的是剥夺式调度。反之,在非剥夺方式下,一个进程一旦获得CPU便一直执行下去,直到完成它的当前CPU周期,系统才重新调度,换言之,系统无权分割进程的任一CPU周期。 §3 调度原则与评估标准

文档评论(0)

ajgoaw + 关注
内容提供者

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

1亿VIP精品文档

相关文档