Difference between revisions of "स्टारवेशन (कंप्यूटर विज्ञान)"

From alpha
Jump to navigation Jump to search
(Created page with "{{short description|Resource shortage in computers}} {{other uses|Starvation (disambiguation)}} कंप्यूटर विज्ञान में, संसाध...")
 
(text)
Line 1: Line 1:
{{short description|Resource shortage in computers}}
{{short description|Resource shortage in computers}}
{{other uses|Starvation (disambiguation)}}
{{other uses|अप्राप्ति (विसंदिग्धीकरण)}}


[[कंप्यूटर विज्ञान]] में, संसाधन भुखमरी एक ऐसी समस्या है जिसका [[समवर्ती कंप्यूटिंग]] में सामना करना पड़ता है जहां एक [[प्रक्रिया (कंप्यूटिंग)]] को अपने काम को संसाधित करने के लिए आवश्यक [[सिस्टम संसाधन]]ों से लगातार इनकार किया जाता है।<ref>{{cite book |title=आधुनिक ऑपरेटिंग सिस्टम|url=https://archive.org/details/modernoperatings00tane |url-access=registration |last=Tanenbaum |first=Andrew |author-link=Andrew Tanenbaum |year=2001 |publisher=Prentice Hall |isbn=0-13-092641-8 |pages=[https://archive.org/details/modernoperatings00tane/page/184 184–185] }}</ref> भुखमरी शेड्यूलिंग या पारस्परिक बहिष्करण एल्गोरिदम में त्रुटियों के कारण हो सकती है, लेकिन संसाधन लीक के कारण भी हो सकती है, और जानबूझकर एक [[कांटा बम]] जैसे इनकार-की-सेवा हमले के कारण हो सकती है।
[[कंप्यूटर विज्ञान]] में, संसाधन विसंदिग्धीकरण एक ऐसी समस्या है जिसका [[समवर्ती कंप्यूटिंग]] में सामना करना पड़ता है जहां एक [[प्रक्रिया (कंप्यूटिंग)]] को अपने काम को संसाधित करने के लिए आवश्यक [[सिस्टम संसाधन|प्रणाली संसाधन]]ों से लगातार इनकार किया जाता है। <ref>{{cite book |title=आधुनिक ऑपरेटिंग सिस्टम|url=https://archive.org/details/modernoperatings00tane |url-access=registration |last=Tanenbaum |first=Andrew |author-link=Andrew Tanenbaum |year=2001 |publisher=Prentice Hall |isbn=0-13-092641-8 |pages=[https://archive.org/details/modernoperatings00tane/page/184 184–185] }}</ref> विसंदिग्धीकरण अनुसूचीयन या पारस्परिक बहिष्करण कलन विधि में त्रुटियों के कारण हो सकती है, लेकिन संसाधन लीक के कारण भी हो सकती है, और जानबूझकर एक [[कांटा बम|फोर्क बम]] जैसे विवरण-सेवा आक्रमण के कारण हो सकती है।


जब एक समवर्ती एल्गोरिथम में भुखमरी असंभव होती है, तो एल्गोरिथम को भुखमरी-मुक्त, तालाबंदी-मुक्त कहा जाता है<ref>{{cite book |title=मल्टीप्रोसेसर प्रोग्रामिंग की कला|first1=Maurice |last1=Herlihy |author-link1=Maurice Herlihy |first2=Nir |last2=Shavit |author-link2=Nir Shavit |publisher=Elsevier |year=2012 |page=24 |isbn=9780123977953}}</ref> या कहा जाता है कि परिमित बाईपास है।{{r|raynal}} यह संपत्ति सुरक्षा और सजीवता गुणों का एक उदाहरण है, और किसी भी पारस्परिक बहिष्करण एल्गोरिदम के लिए दो आवश्यकताओं में से एक है; दूसरा [[शुद्धता (कंप्यूटर विज्ञान)]] है। परिमित बायपास नाम का अर्थ है कि [[साझा संसाधन]] तक पहुंच की अनुमति देने से पहले एल्गोरिथम की किसी भी प्रक्रिया (समवर्ती भाग) को परिमित संख्या में बायपास किया जाता है।<ref name="raynal">{{cite book |title=Concurrent Programming: Algorithms, Principles, and Foundations |first=Michel |last=Raynal |author-link=Michel Raynal |publisher=Springer Science & Business Media |year=2012 |isbn=978-3642320279 |pages=10–11}}</ref>
जब एक समवर्ती कलन विधि में विसंदिग्धीकरण असंभव होती है, तो कलन विधि को विसंदिग्धीकरण-मुक्त, तालाबंदी-मुक्त कहा जाता है <ref>{{cite book |title=मल्टीप्रोसेसर प्रोग्रामिंग की कला|first1=Maurice |last1=Herlihy |author-link1=Maurice Herlihy |first2=Nir |last2=Shavit |author-link2=Nir Shavit |publisher=Elsevier |year=2012 |page=24 |isbn=9780123977953}}</ref> या कहा जाता है कि परिमित उपमार्ग है। {{r|raynal}} यह संपत्ति सुरक्षा और सजीवता गुणों का एक उदाहरण है, और किसी भी पारस्परिक बहिष्करण कलन विधि के लिए दो आवश्यकताओं में से एक है; दूसरा सत्यता [[शुद्धता (कंप्यूटर विज्ञान)|(कंप्यूटर विज्ञान)]] है। परिमित उपमार्ग नाम का अर्थ है कि [[साझा संसाधन]] तक पहुंच की अनुमति देने से पहले कलन विधि की किसी भी प्रक्रिया (समवर्ती भाग) को परिमित संख्या में उपमार्ग किया जाता है।<ref name="raynal">{{cite book |title=Concurrent Programming: Algorithms, Principles, and Foundations |first=Michel |last=Raynal |author-link=Michel Raynal |publisher=Springer Science & Business Media |year=2012 |isbn=978-3642320279 |pages=10–11}}</ref>




== निर्धारण ==
== निर्धारण ==
भुखमरी आमतौर पर एक अत्यधिक सरल [[शेड्यूलिंग एल्गोरिदम]] के कारण होती है। उदाहरण के लिए, यदि कोई (खराब डिज़ाइन वाला) Computer_multitasking|मल्टी-टास्किंग सिस्टम हमेशा पहले दो कार्यों के बीच स्विच करता है जबकि तीसरा कभी नहीं चल पाता है, तो तीसरा कार्य CPU समय से वंचित हो रहा है। शेड्यूलिंग एल्गोरिदम, जो [[कर्नेल (ऑपरेटिंग सिस्टम)]] का हिस्सा है, संसाधनों को समान रूप से आवंटित करने वाला है; अर्थात्, एल्गोरिथम को संसाधनों का आवंटन करना चाहिए ताकि किसी भी प्रक्रिया में आवश्यक संसाधनों की निरंतर कमी न हो।
विसंदिग्धीकरण सामान्यतः एक अत्यधिक सरल [[शेड्यूलिंग एल्गोरिदम|अनुसूचीयन कलन विधि]] के कारण होती है। उदाहरण के लिए, यदि कोई (खराब अभिकल्पना वाला) बहु कार्य प्रणाली हमेशा पहले दो कार्यों के बीच परिवर्तन करता है जबकि तीसरा कभी नहीं चल पाता है, तो तीसरा कार्य CPU समय से वंचित हो रहा है। अनुसूचीयन कलन विधि, जो [[कर्नेल (ऑपरेटिंग सिस्टम)|कर्नेल (संचालन प्रणाली)]] का हिस्सा है, संसाधनों को समान रूप से आवंटित करने वाला है; अर्थात्, कलन विधि को संसाधनों का आवंटन करना चाहिए ताकि किसी भी प्रक्रिया में आवश्यक संसाधनों की निरंतर कमी न हो।


कई ऑपरेटिंग सिस्टम अनुसूचक प्रक्रिया प्राथमिकता की अवधारणा को नियोजित करते हैं। एक उच्च प्राथमिकता वाली प्रक्रिया A कम प्राथमिकता वाली प्रक्रिया B से पहले चलेगी। यदि उच्च प्राथमिकता वाली प्रक्रिया (प्रक्रिया A) ब्लॉक हो जाती है और कभी परिणाम नहीं देती है, तो कम प्राथमिकता वाली प्रक्रिया (B) (कुछ प्रणालियों में) कभी भी शेड्यूल नहीं की जाएगी—यह भुखमरी का अनुभव करेगी। यदि कोई उच्च प्राथमिकता वाली प्रक्रिया X है, जो प्रक्रिया B के परिणाम पर निर्भर है, तो प्रक्रिया X कभी भी समाप्त नहीं हो सकती है, भले ही यह सिस्टम की सबसे महत्वपूर्ण प्रक्रिया है। इस स्थिति को [[प्राथमिकता उलटा]] कहा जाता है। आधुनिक शेड्यूलिंग एल्गोरिदम में आमतौर पर यह गारंटी देने के लिए कोड होता है कि किसी भी प्रक्रिया को भुखमरी से बचाने के लिए सभी प्रक्रियाओं को प्रत्येक महत्वपूर्ण संसाधन (अक्सर CPU समय) की न्यूनतम मात्रा प्राप्त होगी।
कई संचालन प्रणाली अनुसूचक प्रक्रिया प्राथमिकता की अवधारणा को नियोजित करते हैं। एक उच्च प्राथमिकता वाली प्रक्रिया A कम प्राथमिकता वाली प्रक्रिया B से पहले चलेगी। यदि उच्च प्राथमिकता वाली प्रक्रिया (प्रक्रिया A) खण्ड हो जाती है और कभी परिणाम नहीं देती है, तो कम प्राथमिकता वाली प्रक्रिया (B) (कुछ प्रणालियों में) कभी भी नियोजित नहीं की जाएगी—यह विसंदिग्धीकरण का अनुभव करेगी। यदि कोई उच्च प्राथमिकता वाली प्रक्रिया X है, जो प्रक्रिया B के परिणाम पर निर्भर है, तो प्रक्रिया X कभी भी समाप्त नहीं हो सकती है, भले ही यह प्रणाली की सबसे महत्वपूर्ण प्रक्रिया है। इस स्थिति को [[प्राथमिकता उलटा|प्राथमिकता व्युत्क्रमण]] कहा जाता है। आधुनिक अनुसूचीयन कलन विधि में सामान्यतः यह प्रत्याभुति देने के लिए कूट होता है कि किसी भी प्रक्रिया को विसंदिग्धीकरण से बचाने के लिए सभी प्रक्रियाओं को प्रत्येक महत्वपूर्ण संसाधन (प्रायः CPU समय) की न्यूनतम मात्रा प्राप्त होगी।


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


भुखमरी सामान्य रूप से [[गतिरोध]] के कारण होती है जिससे यह एक प्रक्रिया को जमने का कारण बनता है। दो या दो से अधिक प्रक्रियाएँ डेडलॉक हो जाती हैं जब उनमें से प्रत्येक एक ही सेट में किसी अन्य प्रोग्राम द्वारा कब्जा किए गए संसाधन की प्रतीक्षा करते हुए कुछ नहीं कर रही होती है। दूसरी ओर, एक प्रक्रिया भुखमरी में है जब वह एक ऐसे संसाधन की प्रतीक्षा कर रही है जो लगातार अन्य प्रक्रियाओं को दिया जाता है। गतिरोध की अनुपस्थिति की तुलना में भुखमरी-स्वतंत्रता एक मजबूत गारंटी है: एक पारस्परिक बहिष्करण एल्गोरिथ्म जिसे दो प्रक्रियाओं में से एक को एक महत्वपूर्ण खंड में अनुमति देने के लिए चुनना होगा और मनमाने ढंग से गतिरोध-मुक्त है, लेकिन भुखमरी-मुक्त नहीं है।{{r|raynal}}
विसंदिग्धीकरण सामान्य रूप से [[गतिरोध]] के कारण होती है जिससे यह एक प्रक्रिया को स्थिरीकरण का कारण बनता है। दो या दो से अधिक प्रक्रियाएँ गतिरोध हो जाती हैं जब उनमें से प्रत्येक एक ही सम्मुच्चय में किसी अन्य प्रोग्राम द्वारा अधिकृत किए गए संसाधन की प्रतीक्षा करते हुए कुछ नहीं कर रही होती है। दूसरी ओर, एक प्रक्रिया विसंदिग्धीकरण में है जब वह एक ऐसे संसाधन की प्रतीक्षा कर रही है जो लगातार अन्य प्रक्रियाओं को दिया जाता है। गतिरोध की अनुपस्थिति की तुलना में विसंदिग्धीकरण-स्वतंत्रता एक शक्तिशाली प्रत्याभुति है: एक पारस्परिक बहिष्करण कलन विधि जिसे दो प्रक्रियाओं में से एक को एक महत्वपूर्ण खंड में अनुमति देने के लिए चुनना होगा और स्वेच्छाचारी ढंग से गतिरोध-मुक्त है, लेकिन विसंदिग्धीकरण-मुक्त नहीं है। {{r|raynal}}


भुखमरी का एक संभावित समाधान प्राथमिकता कतार के साथ शेड्यूलिंग एल्गोरिदम का उपयोग करना है जो [[ एजिंग (समयबद्धन) ]] तकनीक का भी उपयोग करता है। एजिंग सिस्टम में लंबे समय तक प्रतीक्षा करने वाली प्रक्रियाओं की प्राथमिकता को धीरे-धीरे बढ़ाने की एक तकनीक है।<ref>{{cite book |title=ऑपरेटिंग सिस्टम अवधारणाओं|last=Galvin |first=Peter|year=2010 |publisher=Wiley India Edition |isbn=978-81-265-2051-0|page=193}}</ref>
विसंदिग्धीकरण का एक संभावित समाधान प्राथमिकता पंक्ति के साथ अनुसूचीयन कलन विधि का उपयोग करना है जो [[ एजिंग (समयबद्धन) |परिपक्वन (समयबद्धन)]] तकनीक का भी उपयोग करता है। परिपक्वन प्रणाली में लंबे समय तक प्रतीक्षा करने वाली प्रक्रियाओं की प्राथमिकता को धीरे-धीरे बढ़ाने की एक तकनीक है।<ref>{{cite book |title=ऑपरेटिंग सिस्टम अवधारणाओं|last=Galvin |first=Peter|year=2010 |publisher=Wiley India Edition |isbn=978-81-265-2051-0|page=193}}</ref>




== यह भी देखें ==
== यह भी देखें ==
* [[भोजन दार्शनिकों की समस्या]]
* [[भोजन दार्शनिकों की समस्या|डाइनिंग दार्शनिकों की समस्या]]


==संदर्भ==
==संदर्भ==

Revision as of 11:13, 2 June 2023

कंप्यूटर विज्ञान में, संसाधन विसंदिग्धीकरण एक ऐसी समस्या है जिसका समवर्ती कंप्यूटिंग में सामना करना पड़ता है जहां एक प्रक्रिया (कंप्यूटिंग) को अपने काम को संसाधित करने के लिए आवश्यक प्रणाली संसाधनों से लगातार इनकार किया जाता है। [1] विसंदिग्धीकरण अनुसूचीयन या पारस्परिक बहिष्करण कलन विधि में त्रुटियों के कारण हो सकती है, लेकिन संसाधन लीक के कारण भी हो सकती है, और जानबूझकर एक फोर्क बम जैसे विवरण-सेवा आक्रमण के कारण हो सकती है।

जब एक समवर्ती कलन विधि में विसंदिग्धीकरण असंभव होती है, तो कलन विधि को विसंदिग्धीकरण-मुक्त, तालाबंदी-मुक्त कहा जाता है [2] या कहा जाता है कि परिमित उपमार्ग है। [3] यह संपत्ति सुरक्षा और सजीवता गुणों का एक उदाहरण है, और किसी भी पारस्परिक बहिष्करण कलन विधि के लिए दो आवश्यकताओं में से एक है; दूसरा सत्यता (कंप्यूटर विज्ञान) है। परिमित उपमार्ग नाम का अर्थ है कि साझा संसाधन तक पहुंच की अनुमति देने से पहले कलन विधि की किसी भी प्रक्रिया (समवर्ती भाग) को परिमित संख्या में उपमार्ग किया जाता है।[3]


निर्धारण

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

कई संचालन प्रणाली अनुसूचक प्रक्रिया प्राथमिकता की अवधारणा को नियोजित करते हैं। एक उच्च प्राथमिकता वाली प्रक्रिया A कम प्राथमिकता वाली प्रक्रिया B से पहले चलेगी। यदि उच्च प्राथमिकता वाली प्रक्रिया (प्रक्रिया A) खण्ड हो जाती है और कभी परिणाम नहीं देती है, तो कम प्राथमिकता वाली प्रक्रिया (B) (कुछ प्रणालियों में) कभी भी नियोजित नहीं की जाएगी—यह विसंदिग्धीकरण का अनुभव करेगी। यदि कोई उच्च प्राथमिकता वाली प्रक्रिया X है, जो प्रक्रिया B के परिणाम पर निर्भर है, तो प्रक्रिया X कभी भी समाप्त नहीं हो सकती है, भले ही यह प्रणाली की सबसे महत्वपूर्ण प्रक्रिया है। इस स्थिति को प्राथमिकता व्युत्क्रमण कहा जाता है। आधुनिक अनुसूचीयन कलन विधि में सामान्यतः यह प्रत्याभुति देने के लिए कूट होता है कि किसी भी प्रक्रिया को विसंदिग्धीकरण से बचाने के लिए सभी प्रक्रियाओं को प्रत्येक महत्वपूर्ण संसाधन (प्रायः CPU समय) की न्यूनतम मात्रा प्राप्त होगी।

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

विसंदिग्धीकरण सामान्य रूप से गतिरोध के कारण होती है जिससे यह एक प्रक्रिया को स्थिरीकरण का कारण बनता है। दो या दो से अधिक प्रक्रियाएँ गतिरोध हो जाती हैं जब उनमें से प्रत्येक एक ही सम्मुच्चय में किसी अन्य प्रोग्राम द्वारा अधिकृत किए गए संसाधन की प्रतीक्षा करते हुए कुछ नहीं कर रही होती है। दूसरी ओर, एक प्रक्रिया विसंदिग्धीकरण में है जब वह एक ऐसे संसाधन की प्रतीक्षा कर रही है जो लगातार अन्य प्रक्रियाओं को दिया जाता है। गतिरोध की अनुपस्थिति की तुलना में विसंदिग्धीकरण-स्वतंत्रता एक शक्तिशाली प्रत्याभुति है: एक पारस्परिक बहिष्करण कलन विधि जिसे दो प्रक्रियाओं में से एक को एक महत्वपूर्ण खंड में अनुमति देने के लिए चुनना होगा और स्वेच्छाचारी ढंग से गतिरोध-मुक्त है, लेकिन विसंदिग्धीकरण-मुक्त नहीं है। [3]

विसंदिग्धीकरण का एक संभावित समाधान प्राथमिकता पंक्ति के साथ अनुसूचीयन कलन विधि का उपयोग करना है जो परिपक्वन (समयबद्धन) तकनीक का भी उपयोग करता है। परिपक्वन प्रणाली में लंबे समय तक प्रतीक्षा करने वाली प्रक्रियाओं की प्राथमिकता को धीरे-धीरे बढ़ाने की एक तकनीक है।[4]


यह भी देखें

संदर्भ

  1. Tanenbaum, Andrew (2001). आधुनिक ऑपरेटिंग सिस्टम. Prentice Hall. pp. 184–185. ISBN 0-13-092641-8.
  2. Herlihy, Maurice; Shavit, Nir (2012). मल्टीप्रोसेसर प्रोग्रामिंग की कला. Elsevier. p. 24. ISBN 9780123977953.
  3. 3.0 3.1 3.2 Raynal, Michel (2012). Concurrent Programming: Algorithms, Principles, and Foundations. Springer Science & Business Media. pp. 10–11. ISBN 978-3642320279.
  4. Galvin, Peter (2010). ऑपरेटिंग सिस्टम अवधारणाओं. Wiley India Edition. p. 193. ISBN 978-81-265-2051-0.