OS 處理器排程演算法

2021-10-08 12:49:49 字數 1251 閱讀 4246

1.評價指標

2.排程演算法

2.2短作業優先(短程序優先)spn:選擇就緒佇列中執行時間最短的程序占用cpu執行

2.3最高響應比優先(hrrn) :選擇就緒佇列中響應比最高的程序占用cpu執行

響應比=(等待時間+執行時間)/執行時間;
在短程序優先的基礎上改進的;

2.4時間片輪轉演算法(rr): 主要適用於分時作業系統,系統對就緒佇列的所有程序都分配固定時間片,從就緒佇列的第乙個程序開始,時間片內如果程序還沒執行完成,則必須釋放cpu給下乙個程序使用。

rr演算法對時間片的要求比較高,如果時間片足夠大,則該演算法就退化為fcfs演算法;如果時間片很小,則處理機頻繁的在程序之間切換,使得處理機的開銷增大,影響系統的吞吐量。

時間片長短通常由系統的響應時間,就緒佇列的程序數和系統的處理能力決定

2.5多級反饋佇列排程演算法(結合前幾種的優點):

設定多個就緒佇列,並為各個佇列賦予不同的優先順序,第一級佇列的優先順序最高;

賦予各個佇列中程序執行時間片的大小各不相同。優先順序越高的佇列,賦予的時間片越小;

當乙個新程序進入記憶體後,先進入第一級就緒佇列的隊尾,按fcfs演算法等待排程,若在時間片內程序沒完成,則進入下一級就緒佇列;當乙個長程序依次降到第n級佇列後,在第n級佇列中便採用時間片輪轉的方式執行;

當第一級隊列為空,排程程式才排程第二級佇列中的程序執行,若處理機正在處理第i級佇列地某程序時,有新程序進入優先順序更高地就緒佇列,則此時新程序將搶占正在執行程序地處理機。

3 對比

演算法優點

缺點是否可搶占

fcfcs

簡單平均等待時間波動大 ,cpu資源和io資源利用率低

不可以短程序優先

有利於短程序

可能導致飢餓現象,需要預知程序的執行時間

不可以最高響應比優先

兼顧了長作業和短作業 ,避免飢餓現象地產生

需要預知程序的執行時間

不可以時間片輪詢

公平上下文切換,增大系統開銷,時間片選取對系統效能影響較大

不可以多級反饋佇列

公平,多種演算法的結合

可搶占4 備註:

一般來說,程序優先順序的設定可以參照如下規則:

處理器排程演算法

1 排程方式 排程方式是指當有更高優先順序的程序到來時如何分配cpu 分為可剝奪和不可剝奪兩種。2 排程演算法 先來先服務 時間片輪轉 優先順序排程和多級反饋排程演算法 2.1 先來先服務 fcfs 就是按順序進行排程,遵從 先來後到 的規矩。我不管你是誰,也不管你要理什麼頭型,都去排隊,按順序來。...

處理器排程演算法

作業提交時間 執行時間 開始時間 完成時間 周轉時間 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 平均帶權周...

OS學習筆記 處理器排程1

處理器排程的過程就是為待處理的作業或程序分配處理器的過程。處理器排程的層次 1.高階排程 高階排程又叫做巨集觀排程或作業排程,需要作出兩個決定,乙個是要從駐留在外存後備佇列中調入多少個作業,二是調入哪幾個作業 然後為被選中的作業建立程序,並分配必要的系統資源,如記憶體 外設等。最後把新建立的程序放入...