演算法死鎖
發布時間: 2023-08-25 02:52:23
『壹』 避免死鎖演算法和死鎖檢測演算法的區別
死鎖的條件互斥條件(Mutual exclusion):資源不能被共享,只能由一個進程使用。請求與保持條件(Hold and wait):已經得到資源的進程可以再次申請新的資源。非剝奪條件(No pre-emption):已經分配的資源不能從相應的進程中被強制地剝奪。循環等待條件(Circular wait):系統中若干進程組成環路,改環路中每個進程都在等待相鄰進程正佔用的資源。處理死鎖的策略1.忽略該問題。例如鴕鳥演算法,該演算法可以應用在極少發生死鎖的的情況下。為什麼叫鴕鳥演算法呢,因為傳說中鴕鳥看到危險就把頭埋在地底下,可能鴕鳥覺得看不到危險也就沒危險了吧。跟掩耳盜鈴有點像。2.檢測死鎖並且恢復。3.仔細地對資源進行動態分配,以避免死鎖。4.通過破除死鎖四個必要條件之一,來防止死鎖產生。
熱點內容