多处理器系统和处理器管理课件.ppt
多處理器系統和處理器管理
6.1調度的層次和作業調度一、調度層次1、作業運行2、處理機調度3、處理機長期,短期調度關係
1、作業運行程式員操作員輸入機磁盤作業記憶體打印結束ABCD
作業狀態提交狀態(A):用戶將作業交給機房,輸入輸入機。後備狀態(B):作業資訊輸入輸入機,存放在磁片的某些盤區,等待操作系統接受。運行狀態(C):作業被調度送入記憶體運行。完成狀態(D):作業全部完成,釋放資源,退出系統。
2、調度層次處理器調度分為三級:長期調度(作業調度)中期調度短期調度(進程調度)
長期調度按某種原則挑選作業投入運行為作業創建進程為選中作業分配資源
中期調度決定哪些作業允許參於競爭處理機資源。作用:起到短期調整系統負荷,以平順系統。方式:“掛起”,“解掛”。
短期調度按某種原則將處理機分配給就緒進程。進程調度屬操作系統內核,執行頻率很高。
3、處理機長期,短期調度關係提交後備阻塞就緒運行完成作業註冊作業調度進程調度作業終止運行
二、作業調度1、作業調度的職能2、作業控制塊3、調度性能的衡量
1、作業調度的職能記錄已進入系統的作業情況JCB調度演算法:按照某種調度演算法從後備狀態挑選作業運行。運行準備:為選中作業創建進程,分配主存和外設。結束善後處理:收回資源,輸出必要資訊。作業進入後備狀態建立作業退出系統時撤銷
2、作業控制塊作業存在唯一標誌作業調度的依據記錄作業的有關資訊,反映作業運行情況內容進入系統時建立退出系統時撤銷作業名資源要求資源使用情況類型說明狀態
3、調度性能的衡量平均周轉時間:作業k的周轉時間Tk=完成時間-提交時間=等待時間+運行時間平均周轉時間T=?Tk/作業數
6.2單處理器系統的處理器調度處理器調度的主要功能:按一定的演算法,動態地把處理機分配給就緒佇列中的某個進程
1、選擇調度演算法時應考慮的問題設計目標資源利用率均衡地處理系統和用戶要求優先順序可搶佔和不可搶佔
2、調度演算法先進先服務調度演算法最短作業優先調度演算法時間片輪轉演算法優先順序調度演算法最短剩餘時間優先調度演算法最高回應比優先多級回饋佇列調度演算法
(1)先進先出調度演算法其原則按照作業到達系統或進程進入就緒佇列先後次序來選擇。FIFO是一種非搶佔演算法。
例題進程到達時間服務時間優先數10322265344346565821
作業1作業2作業3作業4作業5039131820平均周轉時間T=1/5(3+7+9+12+12)=8.60
(2)短作業優先調度演算法根據JCB估算運算時間,選取最短作業為調度對象短作業優先調度是非搶佔演算法。缺點:會使長作業饑餓。
作業1作業2作業5作業3作業4039111520T=1/5(3+7+11+14+3)=7.60
(3)時間片輪轉調度演算法把CPU的時間分割成時間片,處於就緒狀態的進程輪流獲得時間片。時間片輪轉調度演算法是搶佔演算法。其調度演算法的性能取決於時間片Q。
Q=4(時間片為4)作業1作業2作業3作業4作業5作業2作業40371115171920T=1/5(3+17+7+14+9)=10.00
(4)優先順序調度演算法選擇優先數高的進程和作業作為調度對象。按搶佔與否優先數可分:非搶佔的優先調度演算法可搶佔的優先調度演算法按靜態,動態優先數可分:靜態優先數動態優先數
非搶佔的優先調度作業1作業2作業4