28 若一作業系統之 CPU 排程採用循環分配方法(round-robin scheduling),每次程序使用 CPU 的時間配額
(time quantum)為 4 毫秒。今有某一排程,共有三個程序 P1、P2 及 P3,其中程序一(P1)到達時間為
0 毫秒、執行時間為 5 毫秒;程序二(P2)到達時間為 2 毫秒、執行時間為 9 毫秒;程序三(P3)到達時
間為 5 毫秒、執行時間為 3 毫秒。請問在上述狀況中,程序一(P1)的總執行時間(等待時間加上使用
CPU 的時間)為何?
(A) 5 毫秒
(B) 9 毫秒
(C) 12 毫秒
(D) 13 毫秒
答案:登入後查看
統計: A(64), B(253), C(231), D(72), E(0) #1267904
統計: A(64), B(253), C(231), D(72), E(0) #1267904
詳解 (共 10 筆)
#1389001
0毫秒: 開始執行P1.
2毫秒: P2到達,列入等候.
4毫秒: P1用完4毫秒,開始執行P2.P1列入等候.
5毫秒: P3到達,P1,P3為等候執行.
8毫秒: P2用完4毫秒,開始執行P1.P3,P2等候執行.
9毫秒: P1執行完畢,開始執行P3.P2為等候執行.
(其實就是因為是循環的 P1有5毫秒,所以要執行2次,中間穿插一次P2的4毫秒)
39
0
#4201201

如圖
3
0
#1322348
請問如何算呢?
2
1
#6067702
請問: p2 的 總執行時間(等待時間加上使用 CPU 的時間)是
20 ms 還是 21 ms 呢 ( 因為 p1 執行完成後,不會在第9 ms
跳到 p3,而是在第12 ms;同理,p3 也不會在第 15 ms跳到
p2,而是在第16 ms ,最後執行 p2,直到第21 ms 完成嗎?)
20 ms 還是 21 ms 呢 ( 因為 p1 執行完成後,不會在第9 ms
跳到 p3,而是在第12 ms;同理,p3 也不會在第 15 ms跳到
p2,而是在第16 ms ,最後執行 p2,直到第21 ms 完成嗎?)
-> 錯誤。
1 總執行時間 = 完成時間點 - 抵達時間點 。
2 等待時間 = 完成時間點 - 執行時間長 。
3 平均 =累加後 平分。
4 先到等待區的,會先在下1個 回合 處理。
ㅤㅤ
A 等待時間( W 的個數 ): P1 = 4; P2= 6 ; P3=4 。(14/3)
B 總執行時間 ( W+V 的個數 ): P1= 9 ; P2=15 ; P3 = 7。(31/3)
B 總執行時間 ( W+V 的個數 ): P1= 9 ; P2=15 ; P3 = 7。(31/3)
ㅤㅤ

ㅤㅤ
ㅤㅤ
ㅤㅤ
ㅤㅤ
ㅤㅤ
ㅤㅤ
ㅤㅤ
ㅤㅤ
0
0