问题:
五个批处理作业A到E,几乎到达计算机中心 同时。他们估计运行时间为10,6,2,4和8 分钟。他们(外部确定的)优先级是3,5,2,1和 4,分别以5为最高优先级。确定平均过程转向 时间。忽略进程切换开销。对于循环调度,假设系统是多道程序设计,并且每个作业都获得CPU的公平份额。所有作业都完全受CPU限制。
解决方案#1 以下解决方案来自this page:
对于循环赛,在前10分钟内,每项工作获得1/5 中央处理器。在10分钟结束时,C结束。在接下来的8 分钟,每个作业获得1/4的CPU,之后D完成。 然后,剩下的三个作业中的每一个都获得6的CPU的1/3 分钟,直到B完成,等等。五个完成时间 工作分别为10,18,24,28,30,平均为22分钟。
解决方案#2 以下解决方案来自康奈尔大学here,这是不同的(这对我来说更有意义):
请记住,周转时间是经过的时间 到达工作和完成工作之间。因为我们假设 所有工作都在0时到达,周转时间就是 他们完成的时间。 (a)循环赛:下表给出了一个 分解在每个时间段内处理哪些工作。 A *表示作业在该量程期间完成。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
A B C D E A B C* D E A B D E A B D* E A B E A B* E A E A E* A A*
结果不同:例如,在第一个C中,C在10分钟后结束,而在第二个C中,C在8分钟后结束。
哪一个是正确的,为什么?我很困惑..提前致谢!
答案 0 :(得分:1)
Q1:我认为“公平份额”要求意味着您可以假设时间在运行流程之间平均分配,因此特定顺序无关紧要。您还可以将此视为量子如此之低,以至于特定排序引入的任何变化都太小而无法担心。
Q2:从上面开始,假设时间平均分配,所有进程需要10分钟才能获得2分钟,此时C将完成。