调度算法总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
调度算法总结
例:在下表中给出进程的到达时间、执行时间和优先级,请给出三种调度算法的进程执行次序和三种调度算法的平均周转时间。这三种调度算法是:短作业优先调度算法、优先级高者优先调度算法和简单轮转法调度算法(简单轮转法中的时间片为2个单位)。
一、先来先服务
先来先服务:按照进程进入就绪队列的先后次序进行选择。是最简单的调度方法。
1.进程运行顺序:P1→P2 →P3 →P4 →P5
2.进程平均运行时间:
{(10-0)+(11-2)+(13-3)+(14-5)+(19-5)}/5=10.4
因为P1、P2、P3的到达时间依次递增,所以按照P1、P2、P3
的顺序依次执行;P4、P5的到达时间相同,但是P4的优先级比P5的高,所以先执行P4。
进程运行的分析图:
二、非剥夺的优先级调度算法
非剥夺的优先级调度算法:一旦某个高优先级的进程占有了处理机,就一直运行下去,直到由于自身的原因而主动让出处理机时(任务完成或等待事件)才让另一高优先级进程运行。
1.进程运行顺序:P1→P4 →P5 →P3→P2
2.进程平均运行时间:
{(10-0)+(19-2)+(18-3)+(11-5)+(16-5)}/5=11.8
因为P1的到达时间是0s,所以P1占有了处理机,然后剩下的按照优先级的大小依次执行,它的顺序是:P4、P5、P3、P2.
三、可剥夺的优先级调度算法
可剥夺的优先级调度算法:任何时刻都严格按照高优先级进程在处理机上运行的原则进行进程的调度,或者说,在处理机上运行的进程永远是就绪进程队列中优先级最高的进程。
1.进程运行顺序:P1→P4→P1→P5→P3→P2
2.进程平均运行时间:
{(11-0)+(19-2)+(18-3)+(6-5)+(16-5)}/5=11
因为P1到达时间是0s,所以先执行P1,经过2s后,P2到达,但是由于P2的优先级低于P1,所以仍由P1继续执行,同理P3也一样;但经过5s后,P4、P5到达,由于P4、P5优先级均高于P1,且P4优先级高于P5,所以先执行P4,等P4执行完以后,再执行P1,然后按照优先级顺序依次执行P5、P3、P2。
四、时间片轮转算法
时间片轮转算法:其进程就绪队列往往按进程到达的时间来排序。
1.进程运行顺序:P1→P2→P1→P3→P4→P5→P1→P5→P1→P5→P1
2.进程平均运行时间:
{(19-0)+(3-2)+(7-3)+(8-5)+(17-5)}/5=7.8
该算法属于可剥夺算法,因此在P1执行2s后,此时P2已经到达且执行时间短,故P2抢占处理机优先运行,在P2执行完之后又继续运行P1,在P1又执行2s后,此时P3、P4、P5已经到达,然后依次执行,直到P5执行完2s后,又轮到P1执行,因此,P1、P5轮流交叉执行直到完成。
进程运行的分析图
五、短进程优先调度算法
短进程优先调度算法:从进程的就绪列中挑选那些所需运行时间(估计时间)最短的进程进入主存运行。
1.进程运行顺序:P1→P2→P4→P3→P5
2.进程平均运行时间:
{(10-0)+(11-2)+(14-3)+(12-5)+(19-5)}/5=10.2
该算法是非剥夺式算法。因为P1到达的时间是0s,所以P1占领处理机优先运行,等P1执行完以后,按照执行时间的大小依次进行,又因为P2先于P4到达,所以先执行P2在执行P4,然后依次执行P3、P5。
进程运行的分析图:
六、最短剩余时间优先调度算法
最短剩余时间优先调度算法:是把短进程优先算法使用于分时环境中的变形。
1.进程运行的顺序:P1→P2→P3→P4→P5→P1
2.进程平均运行时间:
{(19-0)+(3-2)+(5-3)+(6-5)+(11-5)}/5=5.8
因为按照到达时间的大小排序依次是P1、P2、P3、P4、P5,又因为P2在2s后到达,所以P1先运行2s后由P2运行。P4和P5都是相同时间到达,但由于P4优先级高于P5,所以先运行P4,等运行完P5后,在运行P1剩余的时间。
进程运行的分析图:
七、最高响应比优先调度算法
最高响应比优先调度算法:是把短进程优先算法使用于分时环境中的变形。
1.进程运行顺序:P1→P4→P2→P3→P5
2.优先数:
优先数=等待时间Tw+要求的服务时间Tr )/要求的服务时间 所以:
当p1运行结束时, 9118R 2=+=; 5.4227R 3=+=;
6115R 4=+=;
25
55R 5=+=;
经比较R2最大,先行运行p2,当p2运行结束时, 52
28R 3=+=;
71
1
6R 4=+=
; 2.25
56R 5=+=;
经比较R4最大,先行运行p4,当p4运行结束时, 5.52
29R 3=+=;
4.25
57R 5=+=;
经比较R3最大,先行运行p3。
所以最高响应比优先算法的执行次序为, P1—P2—P4—P3—P5 其平均周转时间为:
2.105
5-19314()512()211()010(T =+-+-+-+-=
)
()