Methods for handling deadlocks
1. Deadlock Ignorance
Deadlock Ignorance सभी Mechanism में सबसे ज्यादा Use किया जाने वाला Approach है | इसका Use कई Operating System के द्वारा End-User के Uses (उपयोग) के लिए किया जाता है | इस Approach में Operating System ये Assume करता है की Deadlock कभी Occur नहीं होता है | यह Simply Deadlock को Ignore करता है | यह Approach Single End-user System के लिए Suitable है जहां User केवल Browsing और अन्य General Work के System का प्रयोग करता है |
Correctness और performance के बीच में हमेशा ही Tradeoff (समझौता) होता है | Windows और Linux जैसे Operating System mainly performance पर Focus करते है हालाँकि, System का Performance कम हो जाता है यदि यह हर समय Deadlock Handling Mechanism का उपयोग करता है यदि Deadlock 100 में से 1 बार होता है तो हर समय Deadlock Handling Mechanism का उपयोग करना पूरी तरह से अनावश्यक है।
इस प्रकार के System में, User को Deadlock की स्थिति में बस Computer को Restart करना होता है। Windows और Linux मुख्य रूप से इस Mechanism का उपयोग कर रहे हैं।
2. Deadlock prevention
Deadlock तभी होता है जब System Mutual Exclusion, Hold and Wait, No Preemption और Circular Wait एक साथ Hold करते हैं। Deadlock से System को prevent करने के लिए इन चार Condition में से किसी एक को Occur होने से रोकना होगा |
3. Deadlock avoidance
Deadlock Avoidance में, Operating यह Check करता है कि Operating System द्वारा Execution हर step पर Safe State में है या unsafe state में है। Process तब तक Execute होती रहती है जब तक कि System, Safe State में रहता है । एक बार जब System unsafe state में चला जाता है, तो OS को एक Step Backtrack करना पड़ता है। Operating System प्रत्येक Allocation को Review करता है ताकि Allocation System में Deadlock का कारण न बने |
4. Deadlock Detection and Recovery
यह Approach Process को Deadlock में आने देता है और फिर समय-समय पर Check करता है कि System में Deadlock होता है या नहीं। यदि ऐसा होता है तो यह Deadlock Remove करने के लिए System में कुछ Recovery Method को Apply करता है।