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 नहीं कर पाएंगे |

Deadlock से जुडी कुछ और महत्वपूर्ण पोस्ट आप नीचे दिए गए ब्लॉग लिंक कि मदद से पढ़ सकते है |

Deadlock in the distributed operating system in Hindi

Deadlock Avoidance In Operating System

Methods For Deadlock Prevention

What Is Deadlock Avoidance OS In Hindi?

इस ब्लॉग(Deadlock prevention in os in Hindi) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते [email protected]पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस पोस्ट(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.