考虑以下需要在单个 CPU 上调度的进程集。所有的时间都以毫秒为单位。
Process Name Arrival Time Execution Time
A 0 6
B 3 2
c 5 4
D 7 6
E 10 3
使用最短剩余时间优先调度算法,平均进程周转时间(以毫秒为单位)为 ____________________。
(一) 7.2
(乙) 8
(三) 7
(四) 7.5答案:(一)
说明:流程的周转时间是流程提交和完成之间的总时间。最短剩余时间 (SRT) 调度算法选择在完成前剩余时间最少的进程执行。
解决方案:
设进程为 A、…、C、D 和 E。这些进程将按以下顺序执行。甘特图如下:
前 3 秒,A 将运行,然后剩余时间 A=3, B=2,C=4,D=6,E=3 现在 B 将有机会运行 2 秒,然后剩余时间。 A=3, B=0,C=4,D=6,E=3
现在 A 将有机会跑 3 秒,然后是剩余时间。 A=0, B=0,C=4,D=6,E=3 通过这种方式,您将超越甘特图。
调度表:
众所周知,周转时间是从提交流程到完成流程之间的总时间。即周转时间=完成时间-到达时间。即 TAT=CT-AT
A = 8 (8-0) 的转身时间
B = 2 (5-3) 的周转时间
周转时间 C = 7 (12-5)
D = 14 (21-7) 的周转时间
E = 5 (15-10) 的周转时间
平均周转时间为 (8+2+7+14+5)/5 = 7.2。
答案是 7.2。
参考:
https://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/5_CPU_Scheduling.html
此解决方案由Nitika Bansal 提供
替代解释:
After drawing Gantt Chart
Completion Time for processes A, B, C, D
and E are 8, 5, 12, 21 and 15 respectively.
Turnaround Time = Completion Time - Arrival Time
这个问题的测验