所以再一次,用JAVA做一些调度算法,但问题是,我在互联网上找到的所有例子都没有回答我的问题,所以我没有别的地方可问,于是我写了这篇文章:
如果量子时间为3,并处理:
Name - ArrivalTime - BurstTime
P0 - 0 - 5
P1 - 6 - 5
P2 - 6 - 9
P3 - 8 - 2因此,我没有找到任何例子来说明这一点,如果过程P1还没有到达,但是量子结束了呢?所以P0在3ms内执行,还剩2ms,量子已经结束,P1还没有到达。程序会等待P1,还是会完成P0,并且仍然有1ms的等待时间(直到P1到达)?
发布于 2014-10-24 12:13:01
调度算法只调度等待运行的进程。
一项执行可以是:
T0 : Waiting Process = [P0] ; Executed Process = P0(1-2-3)
T3 : Waiting Process = [P0] ; Executed Process = P0(4-5) => P0 finished
T5 : Waiting Process = [] ; Executed Process = Nothing
T6 : Waiting Process = [P1, P2] ; Executed Process = P1(1-2-3)
T9 : Waiting Process = [P2, P3, P1] ; Executed Process = P2(1-2-3)
T12 : Waiting Process = [P3, P1, P2] ; Executed Process = P3(1-2) => P3 finished
T14 : Waiting Process = [P1, P2] ; Executed Process = P1(4-5) => P1 finished
T16 : Waiting Process = [P2] ; Executed Process = P2(4-5-6)
T19 : Waiting Process = [P2] ; Executed Process = P2(7-8-9) => P2 finished在T3上,只有P0在等待运行,因此它将在下一个时间段内执行。
https://stackoverflow.com/questions/26546414
复制相似问题