處理機調度算法( RR 、HRRF)


1. P117頁,練習15:最高響應比( HRRF)

2. P119頁,練習22(2):時間片輪轉( RR )

3. 現設定采用三級反饋隊列調度算法,三個隊列分別為0、1和2,對應時間片為2、4、8。現有四個進程A、B、C、D,到達時刻分別為0、5、7、12,執行時間分別為7、4、13、2。請寫出整個進程調度過程,包括每個時間段,執行的進程,執行后進程狀態,各個隊列內進程的變化。

4. 從以下幾個方面比較各個調度算法的優缺點:

(1).資源利用率  (2).吞吐率  (3).周轉率  (4).響應時間  (5).公平性  (6).適用范圍

一、先來先服務(FCFS)
  按照作業/進程進入系統的先后次序進行調度,先進入系統者先調度;即啟動等待時間最長的作業/進程。是一種最簡單的調度算法,即可用於作業調度,也可用於進程調度

  1.比較有有利於長作業進程,不利於段作業進程

  2.適合批處理系統,不適合分時系統  

  3.不利於I/0繁忙型作業而有利於CPU繁忙型作業
二、最短作業優先算法(SJF)
  從隊列中選出一個估計運行時間最短的作業優先調度,即可用於作業調度,也可用於進程調度

  1.能夠克服FCFS算法偏愛長作業的缺點,但執行效率也不高

  2.忽視了作業等待時間,進入系統時間長但計算時間長的長作業等待時間會很長,出現就餓現象

  3.缺少剝奪機制,對分時、實時處理不理想

  4.實現該算法要先知道作業運行時間,否則調度就沒有依據

三、最短剩余時間優先算法(剝奪式SJF算法)

  若在進程運行過程中若有所需CPu時間比正在進行的進程時間更短的進程,則先執行最短CPU用時的進程

  1.相比非剝奪式SJF算法,剝奪式算法所需的平均等待時間和平均周轉時間都更短
四、最高響應比優先算法(HRRF)

  HRRF式算法是一種介於FCFS算法和SJF算法之間的一種非剝奪式算法,既考慮作業等待時間有考慮作業處理時間。

  響應比 = 作業周轉時間  /作業處理時間

      = (作業等待時間 + 作業處理時間 ) / 作業處理時間

      = 1+ 作業等待時間 / 作業處理時間

  1.既照顧短作業又不會使長作業的等待時間過長,能有效改善調度性能

  2.每次計算各道作業的響應會導致一定時間開銷,性能比SJF算法略差

五、優先級調度算法

  根據確定的優先級來選取進程/進程,總是選擇就緒隊列中優先級最高者投入運行。通過用戶定義的非剝奪式或剝奪式算法分為 靜態和動態 優先級算法

  1.靜態優先級算法簡單,但是會出現飢餓現象,是某些低優先級/線程無限期地被推遲執行

  2.動態優先級會使個進程的優先級隨時間而改變,原則上是:正在運行的進程隨着CPU占有時間增加,逐漸降低其優先級;就緒隊列中等待的CPU進程隨等待時間的增加而逐漸提高其優先級,克服了靜態優先級的飢餓問題

六、輪轉調度算法(BR)

  也稱時間片調度。調度程序每次把CPU分配個就緒隊列首進程使用規定的時間間隔,稱為時間片,就緒隊列中的每個進程/線程輪流地運行一個時間片,當時間片耗盡時就強迫當前運行進程讓出處理器,轉而排列到就緒隊列尾部,等待下一輪調度。、

  1.BR調度是一種剝奪式調度,系統在進程切換上的開銷比較大,開銷與時間片大小有關。

  2.若時間片取值太小,將導致大多數進程都不可能在一個時間片內運行完畢,就會頻繁的切換。開銷顯著增大,所以從系統效率看,時間片取大一點好。

  3.若時間片長度較大,那么隨着就緒隊列中進程數目增加,輪轉一次所耗費總時長變長,即對每個進程的響應速度放慢,甚至時間片大到讓進程足以完成其所有任務,RR調度算法便退化成FCFS算法。

  4.為滿足用戶對響應時間的要求,要么限制就緒隊列中進程數量,要么采用變化的時間片長度,根據當前負載狀況及時調整時間片大小。所以,確定時間片長度要從數目、切換開銷、系統效率和響應時間等多方面因素加以考慮。

七、多級反饋隊列調度算法(MFQL)

  又稱反饋循環隊列,主要思想是:由系統建立多個就緒隊列,每個隊列對應於一個優先級,第一個隊列的優先級最高,第二個隊列的優先級次之,其后隊列的優先級依次降低。較高優先級隊列分配較短時間片,較低優先級隊列分配較長時間片。

  1.可能會導致“飢餓”問題,假如有一個長作業進入系統,它最終必將移入優先級最低的就緒隊列當中,若其后又源源不斷的短作業進入系統,且形成穩定的作業流,則長作業一直等待,陷入“飢餓狀態”。解決方法是對於低優先級中等待時間較長的,進程提升其優先級,從而讓它獲得運行機會。

  2.MLFQ算法具有良好性能,能滿足各類應用需要。對於分時交互型短作業,系統通常刻在第一隊列規定的時間片內完成工作。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM