1. 程式人生 > >第三章 處理機排程與死鎖

第三章 處理機排程與死鎖

處理機的三級排程

1.高階排程(外存):週期較長,花費較多的時間

2.中級排程(記憶體):執行頻率介於另外兩種排程之間

3.低階排程(程序):執行頻率最高,演算法不能太複雜

   

面向使用者的準則

1.響應時間快

2.均衡性

3.截止時間的保證

4.優先權準則

 

面向系統的準則

1.系統吞吐量高

2.處理機利用率高

3.各類資源的平衡利用

 

不同系統需求各有側重

一、批處理系統

1.平均週轉時間短

2.系統的吞吐量高

3.處理機利用率好

二、分時系統

1.響應時間快

2.均衡

三、實時系統

1.截止時間的保證

2.可預測性

 

常用排程演算法

1.先來先服務排程演算法FCFS

2.短作業優先排程演算法SJF/SPF

3.高優先權優先排程演算法HPF

4.高響應比優先排程演算法HRRN

5.基於時間片的輪轉排程演算法RR

6.多級反饋佇列演算法FB

 

幾種常用排程演算法的比較

 

實現實時排程的基本條件

1.提供必要的資訊

2.系統處理能力足夠強

3.採用搶佔式排程機制

4.具有快速切換機制

 

死鎖:指程序之間無休止地互相等待

飢餓:指一個程序無休止的等待

 

產生死鎖的必要條件:

1.互斥條件

2.請求和保持條件

3.不剝奪條件

4.環路等待條件

 

處理死鎖的基本方法

一、事先預防:

1.預防死鎖

2.避免死鎖

二、事後處理:

1.檢測死鎖

2.解除死鎖

 

死鎖處理方法比較