考虑具有计算时间突发 2、4 和 8 个时间单位的三个进程(进程 id 分别为 0、1、2)。所有进程都在零时间到达。考虑最长剩余时间优先(LRTF)调度算法。在 LRTF 中,通过优先处理具有最低进程 ID 的进程来打破联系。平均周转时间为:
(一) 13个单位
(B) 14 台
(C) 15 台
(D) 16 台答案:(一)
说明:背景说明:
流程的周转时间是流程提交和完成之间的总时间。LRTF(Longest Remaining Time First),表示剩余时间最大的流程,将首先运行,在剩余时间相同的情况下,最低的流程将优先运行。
解决方案:
设进程为 p0、p1 和 p2。这些过程将按以下顺序执行。
甘特图如下:
p2 p1 p2 p1 p2 p0 p1 p2 p0 p1 p2
0 4 5 6 7 8 9 10 11 12 13 14
前 4 秒,p2 将运行,然后剩余时间 p2=4,p1=4,p0=2。现在 P1 将有机会运行 1 秒,然后是剩余时间。 p2=4,p1=3,p0=2。现在 p2 将有机会运行 1 秒,然后是剩余时间。 p2=3,p1=3,p0=2。
通过这样做,您将超越甘特图。
调度表:
PID | AT | BT | CT | TAT=CT-AT |
---|---|---|---|---|
p0 | 0 | 2 | 12 | 12 |
p1 | 0 | 4 | 13 | 13 |
p2 | 0 | 8 | 14 | 14 |
Total | 39 |
AT=到达时间,BT=突发时间,CT=完成时间,TAT=周转时间众所周知,周转时间是流程提交和完成之间的总时间。即周转时间=完成时间-到达时间。即 TAT=CT-AT p0 的周转时间 = 12 (12-0) p1 的周转时间 = 13 (13-0) p2 的周转时间 = 14 (14-0)
平均周转时间为(12+13+14)/3 = 13。选项(A)是正确答案。
参见 http://www.geeksforgeeks.org/operating-systems-set-15/ 的问题 1
此解决方案由Nitika Bansal 提供
这个问题的测验