时间片轮转法.pptxVIP

  • 29
  • 0
  • 约1.55千字
  • 约 9页
  • 2017-06-08 发布于湖北
  • 举报
时间片轮转法

CPU调度-时间片轮转法 (假设听众都学习过先来先服务法) 轮转法调度 基本原理 在轮转法中,系统将所有的就绪进程按先来先服务的原则排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片。当执行的时间片用完时,产生中断,将该程序送往就绪队列的队尾,并把处理机分配给新的队首进程,同时让它也执行一个时间片。这样就保证就绪队列中的所有进程在一给定的时间内均能获得一时间片的处理机执行时间。 轮转法调度 例 性能指标 假设:有作业P1,P2,P3,P4,P5,作业长度依次为6,2,10,4,12,到达时刻都为0。时间片大小为4。 周转时间 周转时间=作业完成时间-作业到达时间 平均周转时间 平均带权周转时间=总周转时间/总作业数 轮转法调度 例-运行图(时间片大小为4) 进程 运行时间 P1 6 P2 2 P3 10 P1 P2 P3 P4 P5 P1 P3 P5 P3 P5 0 4 6 10 14 18 20 24 28 30 34 P4 4 P5 12 轮转法调度 分析 到达时间 开始时间 完成时间 周转时间 P1 0 0 20 20 P2 0 4 6 6 P3 0 6 30 30 P4 0 10 14 14 P5 0 14 34 34 平均周转时间: (20+6+30+14+34)/5=20.8 轮转法调度 思考影响性能的因素 作业调度顺序? 时间片大小? 在时间片轮转法中,每个作业依次运行相同大小的时间片,用完之后将CPU让给下一个,对每个作业都是公平的,因此性能与作业调度顺序无关。 在回答这个问题之前,先认识一个问题:在实际情况下,作业在切换时是会消耗系统资源的 轮转法调度 思考 假如在实际情况下,时间片大小为20ms,作业间调度花费时间为5ms,则CPU的损耗率为20%,对每一个作业,都有高达20%的损耗率是不可忍受的。而且时间片越小损耗率越大,怎么办? 自然而然的,想到增大时间片的大小,例如增大到500ms,则CPU损耗率只有1%,但是是否时间片越大,性能越好? 试想,如果时间片足够大,使得所有的任务都可以在一个时间片里运行完,那么轮转法就会退化为先来先服务法,使得性能下降。 轮转法调度 总结 对时间片轮转法来说,合理的选择时间片的大小是非常重要的。 若时间片选择太大:轮转法就会退化为先来先服务法; 若时间片选择太小:则就会增加作业切换频率,使得系统开销增大。 在实际当中,时间片一般选择100ms。 Thanks

文档评论(0)

1亿VIP精品文档

相关文档