当前位置:文档之家› 时间片轮转法

时间片轮转法


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