Deadlock prevention in os in Hindi? Deadlock Prevention & Avoidance in Hindi?

हेलो दोस्तों आज के इस ब्लॉग पोस्ट(Deadlock prevention in os in Hindi) में हम आपको deadlock prevention के methods के बारे में हिंदी में बताने वाले है | deadlock की समस्या से बचने के लिए designers द्वारा deadlock prevention methods का उपयोग किया जाता है |

और deadlock prevention के लिए जो basic approach होती है वो यह होती है की अगर हमें deadlock होने से रोकना है तो फिर हमें फिर deadlock के लिए responsible चार necessary conditions में से कम से कम एक को delay करना पड़ेगा अथवा रोकना होगा |Deadlock prevention in os in Hindi|

पर actual में डेडलॉक होने के लिए ये चार necessary conditions कौन सी होती है | तो चलिए नीचे इस ब्लॉग में देखते है कि deadlock होने के लिए ये चार condition कौन कौन सी होती है |Deadlock prevention in os in Hindi|

Mutual Exclusion:

देखिये mutual exclusion प्रॉपर्टी का मतलब यह होता है कि कोई भी दो प्रोसेस एक साथ क्रिटिकल सेक्शन में प्रेजेंट नहीं रह सकती है |

मतलब ऐसे resources जो कि non -sharable है जैसे कि प्रिंटर तो ऐसे device में mutual exclusion की कंडीशन होनी ही चाहिए|

नहीं तो फिर तुरंत ही डेडलॉक की कंडीशन बन सकती है |

Hold and Wait:

hold और wait की कंडीशन तब बनती है जब कोई process कुछ resources को होल्ड रखती है|

और किसी एक रिसोर्स के इंतज़ार में रहती है जो कि अभी प्रेजेंट में availble नहीं है |

और इस कंडीशन को हम कुछ इस तरह से एलिमिनेट कर सकते है की हम उस प्रोसेस से फाॅर्स करें कि वह सारे resources को फ्री कर दे जो उसने hold कर रखे है |

और इस स्ट्रेटेजी को इम्प्लीमेंट करने के लिए दो protocol होते है |

पहला प्रोटोकॉल यह है कि जब भी कोई प्रोसेस execution स्टार्ट करने के पहले रिसोर्स के लिए रिक्वेस्ट करती है|

तब हमें ऐसे प्रोसेस के लिए यह provision बनाना चाहिए कि रिसोर्सेस के लिए जितनी भी सिस्टम कॉल इस प्रोसेस द्वारा की जा रही है|

वो सारी calls अन्य सिस्टम कॉल्स से पहले पूरी हो जिससे कि वो प्रोसेस आसानी से बिना किसी रुकावट के अपना execution फिनिश कर ले |

और दूसरा प्रोटोकॉल यह है की जब भी कोई प्रोसेस किसी रिसोर्स के लिए रिक्वेस्ट करें तब उस प्रोसेस के पास पहले से कोई भी रिसोर्स उपलब्ध न हो |

और अगर प्रोसेस के पास पहले से रिसोर्सेज है और फिर वह किसी एडिशनल रिसोर्सेज की डिमांड करती है|

तो फिर उसे अपने पास होल्ड किये हुए सारे रिसोर्सेज को पहले फ्री करना होगा |

और फिर necessary resources की दुबारा से मांग करनी पड़ेगी |

इन प्रोटोकॉल्स का use करने से हमें निम्नलिखित disadvantage होती है |

resource utilization slow हो सकता है | क्योकि बहुत से रिसोर्सेज जो allocate हो सकते है पर long टाइम तक use नहीं किये जाते |

starvation हो सकता है |

No preemption :

no preemption की कंडीशन को हम कुछ प्रोटोकॉल की मदद से prevent कर सकते है |

अगर कोई process कुछ resources को होल्ड करते हुए कुछ एडिशनल रिसोर्सेज की डिमांड करती है और उसकी रिक्वेस्ट को रिजेक्ट कर दिया जाता है|

तो फिर उसे अपने सारे होल्डिंग रिसोर्सेज को फ्री करना पड़ता है|

और फिर से सभी रिसोर्सेज को एक साथ उस additional रिसोर्सेज के साथ दुबारा request करनी पड़ती है |

अगर कोई एक process किसी रिसोर्स के लिए रिक्वेस्ट करती है और वो रिसोर्स किसी और प्रोसेस के पास होल्ड है |

तब ऑपरेटिंग सिस्टम दूसरी प्रोसेस को preempt कर सकता है और उसे वह रिसोर्स फ्री करने के लिए बोल सकता है|

जिसे पहली प्रोसेस request कर रही है |

पर यह deadlock prevention scheme तभी तक डेडलॉक को प्रिवेंट कर सकती है जब दो process की priority same न हो |

यह प्रोटोकॉल केवल ऐसे रिसोर्सेज के लिए प्रैक्टिकल हो सकता है जिनके start point saved किया जा सकता है|

और उसे फिर जरुरत पड़ने पर restore किया जा सके | जैसे कि CPU , register और memory space |

Circular wait:

Circular wait की कंडीशन को हम आसानी से prevent कर सकते है, हम सभी resources types को एक लीनियर आर्डर दे सकते है |

जैसे कि एक प्रोसेस को एक्सेक्यूटिव कम्पलीट करने के लिए कुछ specific टाइप्स के रिसोर्सेज की जरुरत है |

तो ऐसे रिसोर्सेज का हम एक आर्डर क्रिएट कर देते है |

और जब भी कोई प्रोसेस ऐसे रिसोर्स टाइप्स को रिक्वेस्ट करती है तो उसे यह सारे रिसोर्स एक आर्डर में मिलते है |

पर इस एप्रोच का एक disadvantage यह है कि यहाँ पर अगर resources को एक आर्डर में लेना है|

तो कुछ रिसोर्स ऐसे भी होंगे जिन्हे process advance में aaquire तो कर लेंगी पर उन्हें अभी use नहीं करेंगी |

तो ऐसे में concurrency का percentage घाट जायेगा और ऐसे process जिन्हे ऐसे resources की जरुरत है|

उनसे यह रिसोर्स allocate नहीं कर पाएंगे |

You can also go through a few more amazing blog links below related to deadlock:

Deadlock Prevention In OS In Hindi…
Starvation vs Deadlock In Hindi…
Deadlock prevention in OS in Hindi…
What Is Deadlock Avoidance OS In Hindi…
What is Deadlock Avoidance In Operating System…
Methods For Deadlock Prevention…
Methods For Deadlock Handling/ Deadlock Handling in DBMS…
What is Starvation? How does it differ and is similar to deadlock?…
Deadlock in the distributed operating system in Hindi…

इस ब्लॉग(Deadlock prevention in os in Hindi) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते support@a5theory.comपर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस पोस्ट(Deadlock prevention in os in Hindi) को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|Deadlock prevention in os in Hindi|

आपका समय शुभ हो|

Anurag

I am a blogger by passion, a software engineer by profession, a singer by consideration and rest of things that I do is for my destination.