設(shè)計一個按優(yōu)先數(shù)調(diào)度算法實現(xiàn)處理器調(diào)度的程序。
[提示]:
(1) 假定系統(tǒng)有5個進程,每個進程用一個PCB來代表。PCB的格式為:
進程名、指針、要求運行時間、優(yōu)先數(shù)、狀態(tài)。
進程名——P1~P5。
指針——按優(yōu)先數(shù)的大小把5個進程連成隊列,用指針指出下一個進程PCB的首地址。
要求運行時間——假設(shè)進程需要運行的單位時間數(shù)。
優(yōu)先數(shù)——賦予進程的優(yōu)先數(shù),調(diào)度時總是選取優(yōu)先數(shù)大的進程先執(zhí)行。
狀態(tài)——假設(shè)兩種狀態(tài),就緒,用R表示,和結(jié)束,用E表示。初始狀態(tài)都為就緒狀態(tài)。
(2) 每次運行之前,為每個進程任意確定它的“優(yōu)先數(shù)”和“要求運行時間”。
(3) 處理器總是選隊首進程運行。采用動態(tài)改變優(yōu)先數(shù)的辦法,進程每運行1次,優(yōu)先數(shù)減1,要求運行時間減1。
(4) 進程運行一次后,若要求運行時間不等于0,則將它加入隊列,否則,將狀態(tài)改為“結(jié)束”,退出隊列。
(5) 若就緒隊列為空,結(jié)束,否則,重復(3)。
用c語言實現(xiàn)的模擬操作系統(tǒng)處理機調(diào)度過程的程序
標簽:
優(yōu)先數(shù)
調(diào)度算法
處理器
調(diào)度
上傳時間:
2016-02-03
上傳用戶:龍飛艇