अनुशंसित, 2020

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

ओएस में इंटरप्ट और पोलिंग के बीच अंतर

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

पोलिंग और इंटरप्ट सीपीयू को रोकें जो वर्तमान में कर रहा है और अधिक महत्वपूर्ण कार्य का जवाब देता है। मतदान और व्यवधान कई पहलुओं में एक-दूसरे से भिन्न होते हैं। लेकिन मूल बिंदु जो मतदान और व्यवधान को अलग करता है वह यह है कि मतदान में सीपीयू नियमित अंतराल पर I / O उपकरणों की जाँच करता रहता है कि क्या इसे CPU सेवा की आवश्यकता है जबकि, इसके विपरीत, I / O डिवाइस CPU को बाधित करता है और CPU को बताता है कि उसे CPU सेवा की आवश्यकता है । मैंने नीचे दिए गए तुलना चार्ट में इंटरप्ट और पोलिंग के बीच कुछ अंतरों पर चर्चा की है, कृपया देखें।

तुलना चार्ट

तुलना के लिए आधारइंटरप्टमतदान
बुनियादीडिवाइस सीपीयू को सूचित करता है कि उसे सीपीयू ध्यान देने की आवश्यकता है।सीपीयू लगातार डिवाइस की स्थिति की जांच करता है कि क्या उसे सीपीयू का ध्यान चाहिए।
तंत्रएक बाधा एक हार्डवेयर तंत्र है।मतदान एक प्रोटोकॉल है।
सर्विसिंगबाधित हैंडलर डिवाइस को सेवा प्रदान करता है।सीपीयू डिवाइस की सेवा देता है।
संकेतइंटरप्ट-रिक्वेस्ट लाइन बताती है कि डिवाइस को सर्विसिंग की जरूरत है।Comand-ready बिट इंगित करता है कि डिवाइस को सर्विसिंग की आवश्यकता है।
सी पी यूसीपीयू केवल तभी परेशान होता है जब डिवाइस को सर्विसिंग की आवश्यकता होती है, जो सीपीयू चक्र को बचाता है।सीपीयू को इंतजार करना होगा और जांचना होगा कि क्या डिवाइस को सर्विसिंग की जरूरत है जो बहुत सारे सीपीयू चक्रों को बर्बाद करता है।
घटनाकिसी भी समय एक व्यवधान उत्पन्न हो सकता है।CPU नियमित अंतराल पर उपकरणों को पोल करता है।
दक्षताजब डिवाइस सीपीयू को बार-बार बाधित करता रहता है तो इंटरप्ट अक्षम हो जाता है।
जब सीपीयू शायद ही कभी सेवा के लिए तैयार हो पाता है तो मतदान अक्षम हो जाता है।
उदाहरणघंटी बजने दो फिर दरवाजा खोलो कि कौन आया है।लगातार यह देखने के लिए दरवाजा खोलते रहें कि कोई आया है या नहीं।

बाधा की परिभाषा

एक बाधा एक हार्डवेयर तंत्र है जो सीपीयू को यह पता लगाने में सक्षम बनाता है कि किसी डिवाइस को उसके ध्यान की आवश्यकता है। CPU में एक वायर इंटरप्ट-रिक्वेस्ट लाइन होती है जिसे CPU द्वारा हर एक निर्देश के निष्पादन के बाद चेक किया जाता है। जब सीपीयू इंटरप्ट-रिक्वेस्ट लाइन पर एक इंटरप्ट सिग्नल को महसूस करता है, तो सीपीयू अपने वर्तमान में निष्पादित कार्य को रोक देता है और हैंडलर को बाधित करने के लिए कंट्रोल पास करके I / O डिवाइस द्वारा भेजे गए अवरोध का जवाब देता है। इंटरव्यू हैंडलर डिवाइस को सर्विस करके इंटरप्ट को हल करता है।

हालाँकि CPU को पता नहीं होता है कि कब कोई व्यवधान उत्पन्न होगा क्योंकि यह किसी भी समय हो सकता है, लेकिन जब भी यह होता है, तो इसे रुकावट का जवाब देना होता है।

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

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

मतदान की परिभाषा

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

सीपीयू किसी भी उपकरण को सीपीयू ध्यान देने की आवश्यकता है या नहीं, इसका पता लगाने के लिए उससे जुड़े प्रत्येक उपकरण का लगातार परीक्षण करें। प्रत्येक डिवाइस में एक कमांड-तैयार बिट होता है जो उस डिवाइस की स्थिति को इंगित करता है, अर्थात इसमें सीपीयू द्वारा निष्पादित करने के लिए कुछ कमांड है या नहीं। यदि कमांड बिट 1 सेट किया गया है, तो इसके पास कुछ कमांड है जिसे अन्य को निष्पादित करना है यदि बिट 0 है, तो इसकी कोई कमांड नहीं है। सीपीयू में एक व्यस्त बिट है जो सीपीयू की स्थिति को इंगित करता है कि यह व्यस्त है या नहीं। यदि व्यस्त बिट 1 सेट है, तो यह किसी डिवाइस की कमांड को निष्पादित करने में व्यस्त है, अन्यथा यह 0 है

मतदान के लिए एल्गोरिदम

  • जब किसी डिवाइस में CPU द्वारा निष्पादित करने के लिए कुछ कमांड होती है, तो वह लगातार CPU के व्यस्त बिट की जांच करता है जब तक कि यह स्पष्ट नहीं हो जाता (0)।
  • जैसे ही व्यस्त बिट स्पष्ट हो जाता है, डिवाइस अपने कमांड रजिस्टर में राइट-बिट सेट करता है और डेटा-आउट रजिस्टर में एक बाइट लिखता है।
  • अब डिवाइस सेट (1) कमांड-तैयार बिट।
  • जब CPU उपकरणों को कमांड-तैयार बिट की जांच करता है और इसे सेट (1) पाता है, तो यह (1) इसके व्यस्त बिट को सेट करता है।
  • CPU तब डिवाइस के कमांड रजिस्टर को पढ़ता है और डिवाइस के कमांड को निष्पादित करता है।
  • कमांड निष्पादन के बाद, सीपीयू कमांड-तैयार बिट (डिवाइस के कमांड बिट के सफल निष्पादन को इंगित करने के लिए डिवाइस की त्रुटि बिट) को साफ करता है और आगे यह (0) अपने व्यस्त बिट को भी इंगित करता है कि सीपीयू निष्पादित करने के लिए स्वतंत्र है कुछ अन्य डिवाइस की कमांड।

ओएस में इंटरप्ट और पोलिंग के बीच महत्वपूर्ण अंतर

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

निष्कर्ष:

पोलिंग और इंटरप्ट दोनों आई / ओ उपकरणों में भाग लेने में कुशल हैं। लेकिन वे ऊपर चर्चा की गई निश्चित स्थिति में अक्षम हो सकते हैं।

Top