[理工] OS-Round-robin(RR)
題目是
p1:cpu burst(11 times)
p2:cpu burst(4times) -> I/O(9times) ->CPU burst(3times)
p3:cpu burst(8times)
p4:cpu burst(6times)
please draw the Gantt chart and calculate the average waiting time when
system applies round-robin algorithm(time quantum=5)
我的解答是
ans:
-------------------------------------------------------------->
p1 | p2 | p3 | p4 | p1 | p2 | p3 | p4 | p1 |
-------------------------------------------------------------->
0 5 9 14 19 24 27 30 31 32
p1: 11 -> 6 ->1 ->0
p2: 4 -> 0 , 在18秒時wake up
p3: 8 -> 3 -> 0
p4: 6 -> 1 -> 0
average wating time
= ( (19-5)+ (31-24) + (5-0)+(24-9) + (9-0)+(27-14) + (14-0)+(30-19) ) /4
= 22
我比較不確定的是 在p2的部分
我知道在18秒wake up但應該也是不能插隊吧?就是趕在p1之前就出來..
不知道對不對也沒有答案
所以請教各位大大惹..
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.177.194
推
11/18 21:08, , 1F
11/18 21:08, 1F
推
11/18 21:10, , 2F
11/18 21:10, 2F
推
11/18 21:14, , 3F
11/18 21:14, 3F
→
11/18 21:14, , 4F
11/18 21:14, 4F
→
11/18 21:48, , 5F
11/18 21:48, 5F
推
11/18 21:50, , 6F
11/18 21:50, 6F
→
11/18 21:51, , 7F
11/18 21:51, 7F
→
11/18 21:52, , 8F
11/18 21:52, 8F
所以想法是
一開始
P1 P2 P3 P4
之後P1執行完後-5,新的QUEUE變成
P2 P3 P4 P1
之後P2 -4 跑去做IO 不再ready queue
所以queue變成
P3 P4 P1
之後P3再扣-5,所以QUEUE變成
P4 P1 P3
直到WAKE UP,此時QUEUE才會在加回來P2,P2才可以開始搶CPU?
這樣的想法對嗎
※ 編輯: keke0421 來自: 114.37.177.194 (11/18 21:58)
推
11/18 22:03, , 9F
11/18 22:03, 9F
→
11/18 22:05, , 10F
11/18 22:05, 10F