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

* * * 在时刻4之后,就绪队列从头至尾是: P2 P3 P1 P4 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * SJ(P)F短作业/进程优先调度的优缺点 优点: 1)能有效降低作业的平均等待时间; 2)提高吞吐量; 3)能有效缩短进程的周转时间; 缺点: 1)对长作业不利; 2)不考虑作业的紧迫程度; 3)作业执行时间、剩余时间仅为估计时间; 故SJ(P)F算法虽然是优化的,但在CPU调度中很难实现。 三、时间片轮转调度算法RR(1) 应用于分时OS中,能保证及时响应用户的请求,是早期采用的一种调度算法;进入90年代后,广泛采用多级反馈队列调度算法。 时间片轮转法:系统将所有原就绪进程按FCFS的原则,排成一个队列,依次调度,把CPU分配给队首进程,并令其执行一个时间片/CPU时间,通常为10-100ms。时间片用完后,该进程将被抢占并插入就绪队列末尾。 三、时间片轮转调度算法RR(2) (1)保证了就绪队列中的所有进程在给定的时间内,均能获得一时间片来执行,即系统在给定的时间内,响应所有用户的请求。 (2)若进程的执行时间少于时间片,则自愿释放CPU。 (3)时间片将影响: 调度算法(太长--FCFS); 上下文切换(太短--上下文切换频繁,如下页); 平均周转时间。 短时间片增加上下文切换频率 周转时间随时间片变化 三、时间片轮转调度算法—例(1) Eg: 进程 到达时间 服务时间 P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 RR(时间片为1) 平均周转时间=((15-0)+(12-2)+(6-4)+(16-5))/4=9.5 平均等待时间=(8+6+1+7)/4 = 5.5 平均带权周转时间=? P1 P2 P2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 P4 P1 P1 P1 P3 P2 P1 P4 P2 P4 P1 P4 三、时间片轮转调度算法—例(2) Eg: 进程 到达时间 服务时间 P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 RR(时间片为4) 平均周转时间=((12-0)+(8-2)+(9-4)+(16-5))/4=8.5 平均等待时间=(5+2+4+7)/4 = 4.5 P1 P2 0 4 5 6 7 8 9 10 11 12 13 14 15 16 P4 P3 P1 FCFS 非抢占SPF 抢占SPF RR-1 RR-4 平均周转时间 8.75 8 7 9.5 8.5 平均等待时间 4.75 4 3 5.5 4.5 Eg: RR 时间片=20 Process Burst Time P1 53 P2 17 P3 68 P4 24 Gantt : RR的平均周转时间比SPF长,但响应时间要短一些. P1 P2 P3 P4 P1 P3 P4 P1 P3 P3 0 20 37 57 77 97 117 121 134 154 162 四、优先权调度算法 非抢占式优先权算法:系统一旦把处理机分配给就绪队列中优先权最高的进程后,该进程便一直执行下去,直到完成/因发生某事件而放弃处理机时,系统才重新分配处理机。 抢占式优先权算法:系统把处理机分配给就绪队列中优先权最高的进程,使之执行。但在其执行期间,只要出现了另一个优先权更高的进程进入就绪队列,进程调度程序就立即停止当前进程的执行,将其放入就绪队列,重新将处理机分配给新到的优先权最高的进程。 优先权的类型(1) 静态优先权 优先权在创建进程时确定,且在进程的整个运行期间保持不变。 一般用一个整数表示,越小表示优先级越高。 优先权的类型(2) 动态优先权 优先权在创建进程时确定,但在进程的运行期间会发生变化。 ①根据进程占有CPU时间多少来决定,当进程占有CPU时间愈长,那么,在它被阻塞之后再次获得调度的优先级就越低,反之,进程获得调度的可能性越大 ②根据进程等待CPU时间多少来决定,当进程在就绪队列中等待时间愈长,那么,在它被阻塞之后再次获得调度的优先级就越高,反之,进程获得调度的可能性越小 非抢占式优先权算法—例 EG: 进程 到达时间 服务时

文档评论(0)

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

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

1亿VIP精品文档

相关文档