處理機排程:多道程式環境下,動態的把處理機分配給就緒佇列中的乙個程序使之執行。
提高處理機的利用率、改善系統效能,很大程度上取決於處理機排程的效能。
作業進入系統駐留在外存的後備佇列上,再至調入記憶體執行完畢,可能要經歷下述**排程:
高階排程又稱作業排程或長程排程、接納排程
中級排程又稱交換排程或中程排程
低階排程也稱為程序排程、微觀排程或短程排程
面向使用者的準則
1.周轉時間短
2.響應時間快
3.均衡性
4.截止時間的保證
5.優先權準則
面向系統的準則
1.系統吞吐量高
2.處理機利用率好
3.各類資源的平衡利用
二、 排程演算法
1、先來先服務排程演算法fcfs
2. 短作業(程序)優先排程演算法sjf/spf
3. 高優先權優先排程演算法hpf
4. 基於時間片的輪轉排程演算法rr
(1)時間片輪轉演算法
(2)多級反饋佇列演算法fb
實時系統指系統能夠在限定的響應時間內提供所需水平的服務。
指計算的正確性不僅取決於程式的邏輯正確性,也取決於結果產生的時間,如果系統的時間約束條件得不到滿足,將會發生系統出錯。
實現實時排程的基本條件
1)提供必要的資訊
2)系統處理能力足夠強
3)採用搶占式排程機制
4)具有快速切換機制
常用的幾種實時排程演算法
最早截止時間優先edf演算法
最低鬆弛度優先llf演算法
死鎖(deadlock): 指程序之間無休止地互相等待
飢餓(starvation):指乙個程序無休止地等待
產生死鎖的原因和必要條件
競爭資源
程序間推進順序非法
形成死鎖的四個必要條件
互斥條件
請求和保持條件
不剝奪條件
環路等待條件
處理死鎖的基本方法
事先預防:
預防死鎖
避免死鎖
事後處理:
檢測死鎖
解除死鎖
預防死鎖的方法
摒棄「請求和保持」條件
摒棄「不剝奪」條件
摒棄「環路等待」條件
作業系統習題(第三章)
第三章互斥與同步 1.設有n個程序,共享乙個資源r,但每個時刻只允許乙個程序使用r。演算法如下 設定乙個整型陣列flag n 其每個元素對應表示乙個程序對r的使用狀態,若為0表示該程序不在使用r,為1表示該程序要求或正在使用r,所有元素的初值均為0。process pi 2.有三個程序r,m,p,r...
作業系統 第三章筆記(一)
處理及排程與死鎖 1.處理機排程 多道程式環境下,動態的把處理機分配給就緒佇列中的乙個程序使之執行。2.提高處理機的利用率 改善系統效能,很大程度上取決於處理機排程的效能。3.處理機排程便成為os設計的中心問題之一。分配的任務由處理機排程程式完成。一.處理機排程的基本概念 作業進入系統駐留在外存的後...
作業系統 第三章 1 排程
1 處理機排程 多道程式環境下,動態的把處理機分配給就緒佇列中的乙個程序使之執行。2 高階排程 外存進記憶體 又稱作業排程或長程排程 接納排程 批處理系統 作業進入系統後先駐留外存,故需要有作業排程。分時系統 為及時響應,作業由終端直接送入記憶體,故不需作業排程。實時系統中,通常也不需作業排程。3 ...