死鎖狀態
在多道程式系統中,一組進程中的每個進程均無限期的等待被該組進程中的另一個進程所占有且永遠不會釋放的資源,這種現象處於死鎖狀態。
處於死瑣狀態的進程稱為死瑣進程。
發生死瑣時,死瑣進程至少有兩個。
所有死瑣進程都有等待資源,其中,至少有兩個死瑣進程占用了資源。
永久性資源和臨時性資源。
3 系統提供的資源數量有限,不能滿足每個進程的使用。
4 多道程式設計時,進程推進次序不合理。
1 互斥條件。
2 不可剝奪條件。
3 部分分配。
4 循環等待。
1 採用靜態資源預分配,破壞“部分分配”條件。
2 允許進程剝奪其他進程占用的資源,從而破壞“不可剝奪”條件。
3 採用資源有序分配法,破壞“環路”條件。
安全狀態是沒有死瑣的狀態。
什麼時候進行死瑣檢測主要取決於死瑣發生的頻率和死瑣所涉及的進程個數。
1 資源剝奪法。
2 撤消進程法。