Page 21 - ePC11110_資訊科技_課本PDF
P. 21
舉例來說,如果有三個程序的分割時 表 1-1.2 程序的處理時間與優先權順序
間及優先權(以數字大的為優先)如表 工作程序 需處理時間 優先權
1-1.2 所示,依高優先權排程順序,結果如 P1 15 1
圖 1-1.15。 P2 6 3
P3 4 2
P4 8 4
圖 1-1.15 使用高優先權排程的處理程序
PS 演算法一樣具備可強奪與不可強奪,當某個程序到達就緒佇列後,它的優先權
會和目前執行中的程序進行優先權比較,如果新到達的程序優先權比執行中的程序高,
就會搶走 CPU 先執行。
可搶奪方式最大的問題就是饑餓(Starvation),因為低優先權一直被高優先權中斷,
就有可能讓低優先權的程序始終無法執行。饑餓可以透過老化(Aging)的方式解決,也
就是逐漸提高停留在佇列中程序的優先權,讓低優先權的程序也能慢慢提高優先權。
˙ ॥ʢRound-Robin, RRʣ
RR 方法是特別為分時系統而設計的,運作方 表 1-1.3 程序的處理時間
式與先到先服務的排程類似,只是又多加了可強奪
工作程序 需處理時間
的規則,讓程序能互相交換使用 CPU。概念就是定 P1 21
義一個使用時間量(Time Quantum),在 CPU 使 P2 6
用時間達到一個時間量時,就會接著處理下一個程 P3 3
序,循環分配使用 CPU 時間,直到全部程序處理完
畢。例如,有三個程序的分割時間,如表 1-1.3 所示。
假設我們使用的時間片段為 3,在 CPU 處理 P1 至第 3 個時間時,系統就會中斷改
處理 P2,而 P1 餘下的 18 個時間,就會接在 P3 後才處理。接著 P2 處理至第 3 個時間時,
系統也會中斷,接著處理 P3。以此類推,如圖 1-1.16。
Chapter 01 系統平台 11