1.死鎖無知
死鎖無知是所有機制中使用最廣泛的方法。 許多操作系統主要為最終用戶使用。 在這種方法中,操作系統假定永遠不會發生死鎖。 它只是無視死鎖。 這種方法最適合用戶使用系統僅用於流覽和所有其他常規內容的單個最終用戶系統。
正確性和性能之間總是有一個折衷。 Windows和Linux等操作系統主要關注性能。 但是,如果死鎖發生的次數是100次,那麼系統的性能就會一直下降,如果它始終使用死鎖處理機制,那麼完全沒有必要始終使用死鎖處理機制。
在這些類型的系統中,用戶不得不在死鎖情況下重新啟動電腦。 Windows和Linux主要使用這種方法。
2.死鎖預防
只有當相互排斥,持有和等待,沒有搶先和迴圈等待同時成立時,才會發生死鎖。 如果有可能在任何時候違反四個條件之一,那麼在系統中永遠不會發生死鎖。
這種方法背後的想法非常簡單,我們必須在四種情況之一中失敗,但在系統中的物理實現方面可能會有一個大的爭論。
我們稍後會詳細討論它。
3.避免死鎖
在避免死鎖時,操作系統會在操作系統執行的每一步中檢查系統是處於安全狀態還是處於不安全狀態。 該過程一直持續到系統處於安全狀態。 一旦系統進入不安全狀態,操作系統必須回溯一步。
簡而言之,操作系統審查每個分配,以便分配不會導致系統中的死鎖。
稍後我們將詳細討論避免死鎖。
4.死鎖檢測和恢復
這種方法讓進程陷入死鎖,然後定期檢查系統中是否發生死鎖。 如果它發生,那麼它會將一些恢復方法應用到系統中以消除死鎖。
我們稍後將更詳細地討論死鎖檢測和恢復,因為這是一個討論問題。