1、排程方式:排程方式是指當有更高優先順序的程序到來時如何分配cpu
。分為可剝奪和不可剝奪兩種。
2、排程演算法:先來先服務、時間片輪轉、優先順序排程和多級反饋排程演算法
2.1 先來先服務(
fcfs
)就是按順序進行排程,遵從「先來後到」的規矩。我不管你是誰,也不管你要理什麼頭型,都去排隊,按順序來。這種演算法適合長作業和
cpu繁忙的作業,而不適合短作業和
i/o繁忙的作業。
2.1時間片輪轉:主要用於程序排程,目的就是為了提高資源利用率,提高程序併發性和響應時間。每次排程,把
cpu分配隊首程序,並令其執行乙個時間片。 當執行的時間片用完時,由乙個記時器發出乙個時鐘中斷請求,該程序被停止,並被送往就緒佇列末尾;依次迴圈。
2.3優先順序排程:為了照顧緊迫性作業,使之進入系統後便獲得優先處理,引入了最高優先權優先(fpf
)排程演算法。 此演算法常被用在批處理系統中,作為作業排程演算法,也作為多種作業系統中的程序排程,還可以用於實時系統中。當其用於作業排程, 將後備佇列中若干個優先權最高的作業裝入記憶體。當其用於程序排程時,把處理機分配給就緒佇列中優先權最高的程序,此時, 又可以進一步把該演算法分成以下兩種:
1)非搶占式優先權演算法
2)搶占式優先權排程演算法(高效能計算機作業系統)
2.4 多級反饋佇列排程演算法
:
是綜合了時間片輪轉和優先順序排程演算法,優點是照顧短程序提高系統吞吐量,縮短平均運轉週期;不必事先知道各種程序所需要執行的時間,動態調節優先順序;照顧
i/o型程序獲得更好的
i/o裝置利用率和縮短響應時間。
思路如下:
1)設定多個就緒佇列。優先順序佇列1>
佇列2>
佇列3...
每個佇列執行時間片的長度也不同,規定優先順序越低時間片長度越長。
2)新程序投入記憶體後,先投入佇列1
的末尾,按
fcfs
排程。若某程序在佇列
1的時間片內沒有完成,則降低投入到佇列
2末尾,同樣按
fcfs
排程,如此下去。當程序進入最後乙個佇列,則按「時間片輪轉」演算法排程,直至完成。
3)僅當高優先順序的隊列為空時候,才排程低優先順序佇列中的程序執行。如果程序執行時候有新程序進入較高優先順序的佇列,則搶先執行新程序,並把被搶先的程序投入到佇列的末尾。
優先順序的確定需要考慮的因素:
1、對i/o
型程序:進入最高優先順序佇列,及時響應
i/o互動。通常執行完乙個時間片,在該時間片內要求執行完乙個
i/o資料請求,然後放入阻塞佇列。
2、對計算性程序:每次執行完時間片後進入更低階佇列,直至最後,最終採用最大時間片來執行,減少排程次數。
3、對i/o
次數不多,而主要是
cpu處理的程序:完成
i/o後,放回優先
i/o請求時離開的佇列,以免每次都回到最高優先順序佇列後再逐次下降。
4、i/o完成時,提高優先順序;時間片用完時,降低優先順序。
處理器排程演算法
作業提交時間 執行時間 開始時間 完成時間 周轉時間 min 帶權周轉時間 min 10 00 2 00 10 00 12 00 120 120 10 10 1 00 12 25 13 25 195 60 10 25 0 25 12 00 12 25 120 25 平均周轉時間t 355 平均帶權周...
處理器程序排程演算法
周轉時間用於比較同一作業流排程效能,而加權周轉時間用於比較不同作業流排程效能 簡介 根據作業新增到就緒佇列的順序進行排程。此演算法為非剝奪式,即乙個作業執行完畢,另乙個作業才會被排程到處理器。分析 作業名 作業一28 作業二9 作業三3 按此執行順序,平均周轉時間 28 28 9 28 9 3 3 ...
OS 處理器排程演算法
1.評價指標 2.排程演算法 2.2短作業優先 短程序優先 spn 選擇就緒佇列中執行時間最短的程序占用cpu執行 2.3最高響應比優先 hrrn 選擇就緒佇列中響應比最高的程序占用cpu執行 響應比 等待時間 執行時間 執行時間 在短程序優先的基礎上改進的 2.4時間片輪轉演算法 rr 主要適用於...