第4部分调度___lg详解.pptVIP

  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文档。上传文档
查看更多
* 4.7 实时调度 实时系统的中心是短程任务调度器 (a)轮转抢占式调度器 (b)优先级驱动非抢占式调度器 * 4.7 实时调度 (c)优先级驱动、在抢占点抢占的调度器 (d)立即抢占式调度器 实时系统的中心是短程任务调度器 * 4.7 实时调度 调度算法取决于: 一个系统是否执行可调度性分析 如果执行,它是静态的还是动态的 分析结果自身是否根据在运行时分派的任务产生一个调度或计划 * 4.7 实时调度 算法类别 可调度性分析 静态/动态 调度/计划 其它 静态表驱动法 是 静态 调度 静态优先级驱动抢占法 是 静态 无 指定优先级 基于动态规划调度法 是 动态 调度 动态尽力调度法 否 试图满足所有的最后期限,并终止任何已经开始运行,但错过最后期限的进程 调度算法类别 * 4.7.1 限期调度 实时系统不关心任务的绝对执行速度,只关心在最有价值的时间完成(或启动)任务,既不要太早,也不要太晚。 调度所需信息: 就绪时间 启动最后期限 完成最后期限 处理时间 资源需求 优先级 子任务结构 二者取其一 * 4.7.1 限期调度 两个周期性任务 * 4.7.1 限期调度 周期性任务 A – 10ms B – 25ms 每隔10ms进行一次调度决策 * 4.7.1 限期调度 5个非周期性任务 任务的执行时间均为20ms * 4.7.2 速率单调调度 基本思想:为每个进程分配一个与事件发生频率成正比的优先数。 例如,周期为20ms的进程优先数为50,周期为100ms的进程优先数为10 运行时调度程序总是调度优先数最高的就绪进程,并采取抢占式分配策略。 0 速度 优先级 高 低 小 大 图 任务优先级是速度的单调递增函数 * 4.7.3 优先级逆转 在任何基于优先级的可抢占的调度方案中都可能发生的一种现象 当系统内的环境迫使一个较高优先级的任务去等待一个较低优先级的任务时,优先级逆转就会发生 无界限优先级逆转 优先级逆转的持续时间取决于 处理共享资源的时间 其它不相关任务的不可预测的行为 * 4.7.3 优先级逆转 无界限优先级逆转的例子 T1:周期性地检查太空船和软件的状况 T2:处理图片数据 T3:随机地检测设备的状态 优先级:T1T2T3 * 4.7.3优先级逆转 解决无界限优先级逆转方法 优先级继承 优先级较低的任务继承任何与它共享同一个资源的优先级较高的优先级 释放共享资源后,低优先级任务的优先级返回原来的值 优先级置顶 资源优先级比最高任务的优先级高 调度器动态地将这个优先权分配给任何访问该资源的任务 一旦任务使用完资源,其优先级返回到以前的值 作业 复习题:10.2 习题:10.2、10.4 Q A 时间片长度的确定 时间片长度变化的影响 过长:退化为FCFS算法,响应时间长 过短:响应时间长 对响应时间的要求: T(响应时间)=N(进程数目)*q(时间片) 时间片长度的影响因素: 就绪进程的数目: 系统的处理能力: 虚拟轮转法(Virtual Round Robin,VRR) 4 优先级算法 (Priority Scheduling) 调度程序总是选择具有较高优先级的进程. 可以提供多个就绪队列分别代表每个优先级 低优先级进程可能会饿死 允许一个进程随着它的时间或执行历史而改变它的优先级 Priority Queuing 静态优先级 创建进程时就确定,直到进程终止前都不改变。通常是一个整数。 依据: 进程类型 对资源的需求 用户要求 动态优先级 在创建进程时赋予的优先级,在进程运行过程中可以自动改变,以便获得更好的调度性能。 在就绪队列中,等待时间延长则优先级提高 进程每执行一个时间片,就降低其优先级 采用动态优先级的两种调度算法:最短剩余时间优先和最高响应比优先 SPN的变型 最短剩余时间优先SRT(Shortest Remaining Time) 是可剥夺的最短进程优先策略,允许比当前进程剩余时间更短的进程来抢占 必须估计处理时间 长进程可能饥饿 最高响应比优先“ HRRN(Highest Response Ratio Next) 选择具有最大响应比R的进程 R = (等待时间 + 要求执行时间) / 要求执行时间 最高响应比优先 同短进程优先和剩余时间最短者优先调度算法一样,很难准确估计进程的预期执行时间。 每次调度之前都需要计算响应比,增加了系统开销。 两种占用CPU的方式 剥夺式(Preemptive)优先级调度 当有比正在运行的进程优先级更高的进程就绪时,系统可强行剥夺正在运行进程的CPU,给具有更高优先级的进程使用

文档评论(0)

风凰传奇 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档