[工学]操作系统课件 第三章 中断与处理机调度s.ppt

[工学]操作系统课件 第三章 中断与处理机调度s.ppt

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

第三章 中断与处理机调度 3.1 中断与中断系统 3.1.1 中断的概念 3.1.3 中断处理程序 3.2 处理机调度 3.2.1 处理机调度算法 3.2.1.1 先到先服务算法(FCFS) 3.2.1.2 短作业优先算法(SJF) 3.2.1.4 最高优先数算法(HPF) 3.2.1.5 循环轮转算法(RR) 3.2.1.6 分类排队算法(MLQ) 3.2.1.7 最短剩余时间算法(SRTN) 3. 2.1.8 反馈排队算法(FB) 3.2.2 处理机调度时机 3.3 调度级别与多级调度 3.3.2 作业与高级调度 3.4 实时调度 优先数法的基本思想:每个进程的PCB中有一个用数字表示的优先数。当需要进行处理机分配时,系统在可运行进程中选择优先数最高者使其投入运行。 优先数算法尚有两个问题需要解决: 1 如何确定进程的优先数 2 何时进行处理机调度 1. 确定进程优先数的方法有两种: (1) 静态优先数(static priority) 每个进程在创建时被赋予一个优先数, 该 优先数在进程的整个生存期内固定不变。 优点:比较简单, 开销较小; 缺点:公平性差, 可能造成低优先数进程的 长期等待。 静态优先数法适合于批处理进程。 (2) 动态优先数(dynamic priority) 每个进程在创建时被赋予一个优先数,该优先数在进程的生存期内可以动态变化。 比如,当进程获得某种资源时,其优先级应增高。又如,当进程处于就绪状态时,其优先级应随着等待时间的增长而提高等。因此,动态优先数算法适用于实时系统。 优点:资源利用率高,公平性好; 缺点:开销较大,实现较为复杂。 2.处理机的调度时刻有两种: 非剥夺式、剥夺式 非剥夺式静态优先数: 获得CPU的进程一直运行,直至 终止、等待 剥夺式动(静)态优先数 获得CPU的进程运行,直至 终止、等待、出现高优先级的进程 循环轮转算法的基本思想:系统为每个进程规定一个时间片(time slice),所有进程按其时间片的长短轮流地运行。 采用循环轮转算法时,所有就绪进程排成一个队列,当处理机空闲时便选择队列头部的进程使其投入运行,同时分给它一个时间片,当此时间片用完时,如果此进程既未结束,其CPU阵发也未因某种原因而等待,则剥夺此进程所占有的处理机,将其排在就绪队列的尾部,并选择就绪队列中队头的进程运行。 循环轮转法在实现时分为基本轮转和改进轮转。 1.基本轮转 基本轮转法分给所有进程的时间片的长度是相同的,而且是不变的。 采用基本轮转法的系统,若不考虑I/O等待,所有进程以基本均等的速度向前推进。 2.改进轮转 改进轮转法分给不同进程的时间片的长度是不同的,而且(或者)是可变的。 采用改进轮转法的系统, 可根据不同进程的不同特性为其动态地分配不同长度的时间片, 以达到更灵活的调度效果。 采用循环轮转法进行调度时,时间片的长度需认真加以考虑。如果时间片过长,则会影响系统的响应速度;如果过短,则会频繁地发生进程切换,增加系统的开销。通常,时间片的长度为几十毫秒至几百毫秒。 循环轮转法特别适用于分时系统,具有公平性且响应及时等特点。 分类排队法又称多级队列法,它以多个就绪进程队列为特征。 多个就绪队列将系统中所有可运行进程按某种原则加以分类,以实现某种调度目标。 例如,在通用操作系统中,可将所有就绪进程排成如下三个队列: Q1: 实时就绪进程队列 Q2: 分时就绪进程队列 Q3: 批处理就绪进程队列 当处理机空闲时,首先选择Q1中的进程,若Q1为空,则选择Q2中的进程;若Q1,Q2均为空,则选择Q3中的进程。每个队列内部又可分别采用不同的调度算法。 SRTN算法为剥夺式调度算法。当CPU空闲时,选择剩余时间最短的进程或线程。当一个新进程或线程到达时,比较新进程与当前运行进程的估计剩余时间,如果新进程的剩余运行时间短则切换运行进程。 SRTN算法实质上是可剥夺的短作业优先调 度算法。 分类排队法中,尽管系统中有多个进程就绪队列,但一个进程仅属于一个就绪队列,即进程不能在不同的就绪队列之间移动。 反馈排队法也以多个进程就绪队列为特征,每个队列中通常采用时间片轮转调度算法,与分类排队法不同的是进程可以在不同的就绪队列之间移动。 Q1(RR,HPF) Q2(RR,HPF) Qn(RR,HPF) 运行s1时间片 运行s2时间片 …. 创建唤醒 优先级

文档评论(0)

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

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

1亿VIP精品文档

相关文档