ओएसमध्ये डेडलॉक आणि उपासमारी दरम्यान फरक
सामग्री
डेडलॉक आणि उपासमार या दोन्ही अटी अशा आहेत जिथे संसाधनासाठी विनंती करणार्या प्रक्रियेस बराच काळ विलंब झाला. जरी गतिरोधक आणि उपासमार या दोन्ही गोष्टी अनेक बाबींमध्ये एकमेकांपेक्षा भिन्न आहेत. डेडलॉक अशी स्थिती आहे जिथे अंमलबजावणीसाठी कोणतीही प्रक्रिया पुढे येत नाही आणि प्रत्येक प्रक्रिया इतर प्रक्रियेद्वारे अधिग्रहित केलेल्या संसाधनांची प्रतीक्षा करीत असते. दुसरीकडे, मध्ये उपासमार, उच्च प्राथमिकतेसह प्रक्रिया संसाधने प्राप्त करण्यासाठी कमी प्राधान्य प्रक्रियेस प्रतिबंध करणार्या संसाधनांचा सतत वापर करते. खाली दर्शविलेल्या तुलना चार्टच्या मदतीने डेडलॉक आणि उपासमार दरम्यानच्या आणखी काही फरकांवर आपण चर्चा करूया.
- तुलना चार्ट
- व्याख्या
- मुख्य फरक
- निष्कर्ष
तुलना चार्ट
तुलनासाठी आधार | डेडलॉक | उपासमार |
---|---|---|
मूलभूत | डेडलॉक असे आहे जेथे कोणतीही प्रक्रिया पुढे येत नाही आणि अवरोधित केली जाईल. | उपासमार ही अशी आहे जिथे कमी प्राधान्य प्रक्रिया ब्लॉक केल्या जातात आणि उच्च प्राधान्य प्रक्रिया पुढे सरकते. |
उद्भवणारी अट | म्युच्युअल वगळण्याची घटना, होल्ड करा आणि प्रतीक्षा करा, प्रीमप्शन नाही आणि परिपत्रक एकाच वेळी प्रतीक्षा करा. | प्राधान्यक्रमांची अंमलबजावणी, अनियंत्रित संसाधन व्यवस्थापन. |
दुसरे नाव | परिपत्रक प्रतीक्षा. | लाइफलोक. |
संसाधने | डेडलॉकमध्ये, विनंती केलेली संसाधने अन्य प्रक्रियांद्वारे अवरोधित केली जातात. | उपासमारीच्या वेळी, विनंती केलेली संसाधने सतत उच्च प्राथमिकता प्रक्रियेद्वारे वापरली जातात. |
प्रतिबंध | परस्पर बहिष्कार टाळणे, धरून ठेवा आणि प्रतीक्षा करा, आणि परिपत्रक प्रतीक्षा करा आणि प्रीमेशनला परवानगी द्या. | वयस्कर. |
डेडलॉक व्याख्या
डेडलॉक ही अशी परिस्थिती आहे जिथे सीपीयूमधील अनेक प्रक्रिया सीपीयूमध्ये मर्यादित संख्येने उपलब्ध स्त्रोतांसाठी स्पर्धा करतात. येथे, प्रत्येक प्रक्रियेमध्ये एक संसाधन असते आणि ती संसाधनाची प्रतीक्षा करते जी इतर कोणत्याही प्रक्रियेद्वारे होते. सर्व प्रक्रिया परिपत्रक फॅशनमधील संसाधनांची प्रतीक्षा करतात. खाली दिलेल्या प्रतिमेत, आपण पाहू शकता की प्रक्रिया पी 1 ने संसाधन आर 2 प्राप्त केला आहे जो प्रक्रिया पी 2 द्वारे विनंती केलेला आहे आणि प्रक्रिया पी 1 पुन्हा आर 2 ने धारण केलेल्या संसाधन आर 1 साठी विनंती करीत आहे. तर पी 1 आणि पी 2 वर प्रक्रिया करा आणि एक गतिरोध तयार करा.
डेडलॉक ही मल्टीप्रोसेसींग ऑपरेटिंग सिस्टम, वितरित प्रणाली आणि समांतर संगणकीय प्रणालींमध्ये एक सामान्य समस्या आहे. डेडलॉकची स्थिती वाढविण्यासाठी एकाच वेळी उद्भवल्या जाणार्या चार अटी आहेत, ज्या म्युच्युअल बहिष्कार, होल्ड आणि थांबणे, प्रीमिपशन नाही, आणि परिपत्रक प्रतीक्षा आहेत.- परस्पर वगळणे: इतर प्रक्रियेने समान संसाधनाची विनंती केल्यास एकाच वेळी फक्त एक प्रक्रिया संसाधनाचा वापर करू शकते, संसाधनाचा वापर करुन ती प्रक्रिया प्रकाशीत होईपर्यंत प्रतीक्षा करावी लागेल.
- होल्ड करा आणि प्रतीक्षा करा: प्रक्रियेमध्ये संसाधन असणे आवश्यक आहे आणि दुसर्या संसाधनाची प्रतीक्षा करणे आवश्यक आहे जे काही अन्य प्रक्रियेद्वारे होते.
- प्रीमप्शन नाही: संसाधने असणारी प्रक्रिया प्रीमप होऊ शकत नाही. संसाधन असणारी प्रक्रिया जेव्हा कार्य पूर्ण करते तेव्हा स्वेच्छा स्वेच्छेने सोडली पाहिजे.
- परिपत्रक प्रतीक्षा: प्रक्रियेसाठी परिपत्रक फॅशनमधील संसाधनांची प्रतीक्षा करणे आवश्यक आहे. समजा आपल्याकडे पी 0, पी 1, पी 2 three तीन प्रक्रिया आहेत. पी 0 ने पी 1 ने असलेल्या संसाधनाची प्रतीक्षा केली पाहिजे; पी 1 ने प्रक्रिया पी 2 द्वारा आयोजित संसाधनाची प्रतीक्षा करणे आवश्यक आहे, आणि पी 2 ने पी 0 द्वारा आयोजित प्रक्रिया प्राप्त करण्यासाठी प्रतीक्षा करणे आवश्यक आहे.
जरी असे काही अनुप्रयोग आहेत जे कार्यक्रमांना शोधू शकतात जे डेडलॉक होऊ शकतात. डेडलॉक टाळण्यासाठी ऑपरेटिंग सिस्टम कधीही जबाबदार नसते. डेडलॉक फ्री प्रोग्रामची रचना करण्याची प्रोग्रामरची जबाबदारी आहे. डेडलॉक घटनेसाठी आवश्यक असलेल्या वरील अटी टाळून हे केले जाऊ शकते
उपासमार व्याख्या
जेव्हा एखाद्या संसाधनासाठी प्रक्रियेची विनंती केली जाते आणि इतर संसाधने सतत ती संसाधने वापरत असतात तेव्हा भुकेलेपणाचे वर्णन केले जाऊ शकते मग विनंती करणार्या प्रक्रियेस उपासमारीची वेळ येते. उपासमारीच्या काळात, सीपीयूची संसाधनाचे वाटप करण्यासाठी अंमलबजावणीसाठी तयार प्रक्रिया. परंतु प्रक्रियेस अनिश्चित काळासाठी प्रतीक्षा करावी लागेल कारण इतर प्रक्रिया सतत विनंती केलेल्या संसाधनांना अवरोधित करतात.
उपासमारीची समस्या सहसा येते प्राधान्य शेड्यूलिंग अल्गोरिदम. प्राथमिकता शेड्यूलिंग अल्गोरिदममध्ये, उच्च प्राथमिकतेसह प्रक्रिया नेहमीच संसाधनाचे वाटप केली जाते, ज्यामुळे विनंती केलेली संसाधन कमी प्राधान्य प्रक्रियेस प्रतिबंधित करते.
वयस्कर उपासमारीची समस्या सोडवू शकते. वृद्धत्वामुळे हळूहळू संसाधनांची प्रतीक्षा करत असलेल्या प्रक्रियेची प्राधान्यता वाढते. वृद्धत्व संसाधनासाठी अनिश्चित काळासाठी प्रतीक्षा करणे कमी प्राधान्य असणारी प्रक्रिया प्रतिबंधित करते.
- एका गतिरोधात, कोणतीही प्रक्रिया अंमलबजावणीसाठी पुढे येत नाही, प्रत्येक प्रक्रिया दुसर्या प्रक्रियेद्वारे अधिग्रहित केलेल्या संसाधनांच्या प्रतीक्षेत थांबविली जाते. दुसरीकडे, उपासमार ही एक अट आहे जिथे जास्त प्राधान्य असणार्या प्रक्रियांना कमी प्राधान्य प्रक्रियेस कमी प्राधान्य देणारी प्रक्रिया अनिश्चित काळासाठी अवरोधित करणे परिणामी संसाधने मिळविण्यापासून प्रतिबंधित करून संसाधने सतत मिळविण्याची परवानगी दिली जाते.
- जेव्हा चार अटी उद्भवतात तेव्हा गतिरोधक उद्भवते म्युच्युअल बहिष्कार, होल्ड करा आणि प्रतीक्षा करा, प्रीमप्शन नाही आणि परिपत्रक प्रतीक्षा करा एकाच वेळी उद्भवते. तथापि, प्रक्रिया असताना उपासमार होतो प्राधान्यक्रम लागू केले आहेत स्त्रोत वाटप करताना, किंवा सिस्टममध्ये अनियंत्रित संसाधन व्यवस्थापन आहे.
- डेडलॉकला बर्याचदा नावाने म्हणतात परिपत्रक प्रतीक्षा तर, उपासमार म्हणतात जिवंत लॉक.
- डेडलॉकमध्ये संसाधने प्रक्रियेद्वारे अवरोधित केली जातात तर उपासमारीच्या वेळी, प्रक्रिया उच्च प्राथमिकता असलेल्या प्रक्रिया सतत वापरत असतात.
- म्युच्युअल बहिष्कार, होल्ड आणि थांबा आणि परिपत्रक प्रतीक्षा यासारख्या परिस्थिती टाळून आणि दीर्घ काळासाठी संसाधने धारण केलेल्या प्रक्रियेच्या पूर्वस्थितीस परवानगी देऊन गतिरोध टाळता येतो. दुसरीकडे, उपासमार रोखू शकतो वृद्ध होणे.
निष्कर्ष:
डेडलॉक आणि भुकेले दोघेही प्रक्रिया अवरोधित करून प्रक्रियेच्या अंमलबजावणीस विलंब करतात. एकीकडे जिथे गतिरोधक प्रक्रियेस उपाशीपोटी कारणीभूत ठरू शकते आणि दुसरीकडे उपासमारीमुळे प्रक्रिया गतिरोधातून बाहेर येऊ शकतात.