अनुशंसित, 2024

संपादक की पसंद

ओएस में गतिरोध और भुखमरी के बीच अंतर

गतिरोध और भुखमरी दोनों ऐसी स्थितियाँ हैं जहाँ संसाधन के लिए अनुरोध करने वाली प्रक्रियाएँ लंबे समय तक विलंबित होती हैं। हालांकि गतिरोध और भुखमरी दोनों कई पहलुओं में एक दूसरे से अलग हैं। गतिरोध एक ऐसी स्थिति है जहां कोई भी प्रक्रिया निष्पादन के लिए आगे नहीं बढ़ती है, और प्रत्येक उन संसाधनों का इंतजार करता है जिन्हें अन्य प्रक्रियाओं द्वारा हासिल किया गया है। दूसरी ओर, भुखमरी में, उच्च प्राथमिकताओं के साथ प्रक्रिया संसाधनों का अधिग्रहण करने के लिए कम प्राथमिकता प्रक्रिया को रोकने वाले संसाधनों का लगातार उपयोग करती है। नीचे दिए गए तुलना चार्ट की मदद से गतिरोध और भुखमरी के बीच कुछ और अंतरों पर चर्चा करते हैं।

तुलना चार्ट

कम्पासियन के लिए आधारगतिरोधभुखमरी
बुनियादीगतिरोध वह जगह है जहां कोई प्रक्रिया आगे नहीं बढ़ती है, और अवरुद्ध हो जाती है।भुखमरी वह है जहां कम प्राथमिकता वाली प्रक्रिया अवरुद्ध हो जाती है, और उच्च प्राथमिकता प्रक्रिया आगे बढ़ती है।
उठती हालतम्यूचुअल एक्सक्लूज़न की घटना, होल्ड एंड वेट, नो प्रीएम्प्शन और सर्कुलर वेट एक साथ।प्राथमिकताओं का प्रवर्तन, अनियंत्रित संसाधन प्रबंधन।
अन्य नामपरिपत्र प्रतीक्षा।Lifelock।
साधनगतिरोध में, अनुरोधित संसाधन अन्य प्रक्रियाओं द्वारा अवरुद्ध हो जाते हैं।भुखमरी में, उच्च प्राथमिकता प्रक्रियाओं द्वारा अनुरोधित संसाधनों का लगातार उपयोग किया जाता है।
निवारणपारस्परिक बहिष्करण से बचें, रुको और रुको, और परिपत्र प्रतीक्षा करें और प्रीमेशन की अनुमति दें।उम्र बढ़ने।

डेडलॉक की परिभाषा

डेडलॉक एक ऐसी स्थिति है जहां सीपीयू में कई प्रक्रियाएं सीपीयू के भीतर उपलब्ध संसाधनों की परिमित संख्या के लिए प्रतिस्पर्धा करती हैं। यहां, प्रत्येक प्रक्रिया एक संसाधन रखती है और एक संसाधन प्राप्त करने के लिए प्रतीक्षा करती है जो किसी अन्य प्रक्रिया द्वारा आयोजित की जाती है। सभी प्रक्रियाएं एक परिपत्र फैशन में संसाधनों की प्रतीक्षा करती हैं। नीचे दी गई छवि में, आप देख सकते हैं कि प्रोसेस पी 1 ने संसाधन आर 2 का अधिग्रहण किया है जो प्रक्रिया पी 2 द्वारा अनुरोधित है और प्रक्रिया पी 1 संसाधन आर 1 के लिए अनुरोध कर रहा है जो फिर से आर 2 द्वारा आयोजित किया जाता है। तो P1 और P2 प्रक्रिया एक गतिरोध के रूप में।

डेडलॉक बहुप्रचलित ऑपरेटिंग सिस्टम, वितरित सिस्टम और समानांतर कंप्यूटिंग सिस्टम में भी एक आम समस्या है। गतिरोध की स्थिति को बढ़ाने के लिए चार स्थितियां एक साथ होनी चाहिए, जो कि पारस्परिक बहिष्करण, होल्ड एंड वेट, नो प्रीएम्प्शन और सर्कुलर प्रतीक्षा हैं।

  • पारस्परिक बहिष्करण: एक समय में केवल एक प्रक्रिया एक संसाधन का उपयोग कर सकती है यदि अन्य प्रक्रिया समान संसाधन का अनुरोध करती है, तो उसे तब तक इंतजार करना पड़ता है जब तक संसाधन उसे उपयोग नहीं करता।
  • रुको और रुको: एक प्रक्रिया एक संसाधन को पकड़ना चाहिए और किसी अन्य संसाधन को प्राप्त करने के लिए प्रतीक्षा करनी चाहिए जो किसी अन्य प्रक्रिया द्वारा आयोजित की जाती है।
  • नो प्रीमेंशन: संसाधनों को धारण करने की प्रक्रिया को पहले से तय नहीं किया जा सकता है। संसाधन रखने की प्रक्रिया को संसाधन को स्वेच्छा से जारी करना चाहिए जब उसने अपना कार्य पूरा कर लिया हो।
  • परिपत्र प्रतीक्षा: प्रक्रिया को एक गोलाकार तरीके से संसाधनों की प्रतीक्षा करनी चाहिए। मान लीजिए कि हमारे पास तीन प्रक्रियाएँ हैं {P0, P1, P2}। P0 को P1 द्वारा रखे गए संसाधन की प्रतीक्षा करनी चाहिए; P1 को प्रोसेस P2 द्वारा रखे गए संसाधन को हासिल करने के लिए इंतजार करना चाहिए, और P2 को P0 द्वारा आयोजित प्रक्रिया के अधिग्रहण का इंतजार करना चाहिए।

हालांकि कुछ एप्लिकेशन हैं जो उन कार्यक्रमों का पता लगा सकते हैं जो गतिरोध हो सकते हैं। लेकिन गतिरोध को रोकने के लिए ऑपरेटिंग सिस्टम कभी जिम्मेदार नहीं होता है। प्रोग्रामर्स की जिम्मेदारी है कि वे डेडलॉक फ्री प्रोग्राम डिजाइन करें। यह उपरोक्त शर्तों से बचकर किया जा सकता है जो गतिरोध घटना के लिए आवश्यक हैं

भुखमरी की परिभाषा

भुखमरी को तब परिभाषित किया जा सकता है जब किसी संसाधन के लिए एक प्रक्रिया अनुरोध और उस संसाधन को अन्य प्रक्रियाओं द्वारा लगातार उपयोग किया जाता है, फिर अनुरोध प्रक्रिया भुखमरी का सामना करती है। भुखमरी में, संसाधन को आवंटित करने के लिए सीपीयू की प्रतीक्षा करने के लिए तैयार एक प्रक्रिया। लेकिन प्रक्रिया को अनिश्चित काल तक इंतजार करना पड़ता है क्योंकि अन्य प्रक्रियाएं लगातार अनुरोधित संसाधनों को अवरुद्ध करती हैं।

भुखमरी की समस्या आम तौर पर प्राथमिकता निर्धारण शेड्यूलिंग एल्गोरिदम में होती है । प्राथमिकता निर्धारण निर्धारण एल्गोरिथ्म में, उच्च प्राथमिकता वाली प्रक्रिया को हमेशा संसाधन आवंटित किया जाता है, कम प्राथमिकता वाली प्रक्रिया को अनुरोधित संसाधन प्राप्त करने से रोकता है।

वृद्धावस्था भुखमरी की समस्या को हल कर सकती है। एजिंग धीरे-धीरे उस प्रक्रिया की प्राथमिकता को बढ़ाता है जो संसाधनों के लिए लंबे समय से इंतजार कर रहा है। एजिंग एक संसाधन के लिए अनिश्चित काल तक प्रतीक्षा करने के लिए कम प्राथमिकता वाली प्रक्रिया को रोकता है।

ओएस में गतिरोध और भुखमरी के बीच महत्वपूर्ण अंतर

  1. एक गतिरोध में, कोई भी प्रक्रिया निष्पादन के लिए आगे नहीं बढ़ती है, प्रत्येक प्रक्रिया दूसरी प्रक्रिया द्वारा अर्जित संसाधनों के इंतजार में अवरुद्ध हो जाती है। दूसरी ओर, भुखमरी एक ऐसी स्थिति है जहां उच्च प्राथमिकता रखने वाली प्रक्रियाओं को संसाधनों को प्राप्त करने के लिए कम प्राथमिकता वाली प्रक्रियाओं को रोकने के लिए निरंतर संसाधनों को प्राप्त करने की अनुमति मिलती है, जिसके परिणामस्वरूप कम प्राथमिकता वाली प्रक्रियाओं को अनिश्चितकालीन अवरुद्ध किया जाता है।
  2. गतिरोध तब उत्पन्न होता है जब चार स्थितियाँ परस्पर बहिष्कार, पकड़ और प्रतीक्षा, कोई पूर्वधारणा, और परिपत्र प्रतीक्षा एक साथ होती है। हालांकि, भुखमरी तब होती है जब संसाधनों को आवंटित करते समय प्रक्रिया प्राथमिकताएं लागू की गई हैं, या सिस्टम में अनियंत्रित संसाधन प्रबंधन है।
  3. डेडलॉक को अक्सर सर्कुलर वेट के नाम से पुकारा जाता है, जबकि भुखमरी को Lived लॉक कहा जाता है।
  4. डेडलॉक में संसाधनों को प्रक्रिया द्वारा अवरुद्ध किया जाता है, जबकि भुखमरी में, प्रक्रियाओं को उच्च प्राथमिकताओं के साथ प्रक्रियाओं द्वारा लगातार उपयोग किया जा रहा है।
  5. आपसी बहिष्कार, पकड़ और प्रतीक्षा, और परिपत्र प्रतीक्षा जैसी स्थितियों से बचने और लंबे समय तक संसाधनों को रखने वाली प्रक्रियाओं के प्रसार की अनुमति देकर गतिरोध को रोका जा सकता है। दूसरी ओर, उम्र बढ़ने से भुखमरी को रोका जा सकता है।

निष्कर्ष:

डेडलॉक और भुखमरी दोनों को अवरुद्ध करके प्रक्रिया निष्पादन में देरी करता है। एक तरफ जहां गतिरोध भूखे रहने की प्रक्रिया का कारण बन सकता है, और दूसरी ओर भुखमरी प्रक्रियाओं को गतिरोध से बाहर निकाल सकता है।

Top