इंटरप्ट एंड ट्रैप के बीच अंतर

Anonim

इंटरप्ट बनाम ट्रैप

जैसी घटनाएं प्रोग्राम के सामान्य निष्पादन के दौरान, किसी भी कंप्यूटर में, ऐसी घटनाएं हो सकती हैं जो CPU को अस्थायी तौर पर रोक सकें। इस तरह की घटनाओं को इंटरप्ट कहा जाता है इंटरप्ट किसी भी सॉफ्टवेयर या हार्डवेयर दोष के कारण हो सकता है। हार्डवेयर इंटरप्ट को (बस) इंटरप्ट्स कहा जाता है, जबकि सॉफ्टवेयर इंटरप्ट को अपवाद या जाल कहा जाता है। एक अपवाद एक स्वचालित रूप से उत्पन्न सॉफ़्टवेयर इंटरप्ट है, जबकि ट्रैप प्रोग्रामर द्वारा शुरू की गई एक सॉफ़्टवेयर-इनक्लाइड इंटरप्ट है। एक बार अंतरायन (सॉफ़्टवेयर या हार्डवेयर) उठाया जाता है, नियंत्रण को आईएसआर (इंटरप्ट सर्विस राऊंडिन) नामक एक विशेष उपनगरों में स्थानांतरित किया जाता है जो कि बीच में उठने वाली स्थिति को नियंत्रित कर सकता है।

इंटरप्ट क्या है?

शब्द इंटरप्ट आमतौर पर हार्डवेयर इंटरप्ट के लिए आरक्षित है वे बाहरी हार्डवेयर घटनाओं के कारण कार्यक्रम नियंत्रण रुकावटें हैं यहां, सीपीयू से बाहरी बाह्य साधन हार्डवेयर इंटरप्ट आमतौर पर टाइमर चिप, परिधीय डिवाइस (कीबोर्ड, माउस, आदि), आई / ओ बंदरगाहों (सीरियल, समानांतर, आदि), डिस्क ड्राइव, सीएमओएस घड़ी, विस्तार कार्ड (ध्वनि कार्ड, वीडियो कार्ड, आदि)। इसका अर्थ है कि निष्पादन कार्यक्रम से संबंधित कुछ ईवेंट के कारण हार्डवेयर इंटरप्ट लगभग कभी नहीं होते हैं। उदाहरण के लिए, उपयोगकर्ता द्वारा कीबोर्ड पर एक कुंजी प्रेस की तरह एक इवेंट, या एक आंतरिक हार्डवेयर टाइमर का समय समाप्त करने से इस तरह की बाधा उत्पन्न हो सकती है और CPU को सूचित कर सकता है कि एक निश्चित डिवाइस को कुछ ध्यान देने की जरूरत है। ऐसी स्थिति में जैसे सीपीयू जो कुछ भी कर रहा था (i। ई वर्तमान प्रोग्राम को रोकता है) को रोक देगा, डिवाइस द्वारा आवश्यक सेवा प्रदान करेगा और सामान्य कार्यक्रम में वापस आ जाएगी। जब हार्डवेयर इंटरप्ट उत्पन्न होता है और सीपीयू आईएसआर शुरू होता है, तो अन्य हार्डवेयर इंटरप्ट्स अक्षम होते हैं (जैसे 80 × 86 मशीनों में) यदि आपको आईएसआर चलने के दौरान होने वाले अन्य हार्डवेयर इंटरप्ट की आवश्यकता है, तो आपको इसे स्पष्ट रूप से इंटरप्ट झंडा साफ करके (sti निर्देश के साथ) करना होगा। 80 × 86 मशीनों में, इंटरप्ट फ्लैग समाशोधन केवल हार्डवेयर इंटरप्ट्स को प्रभावित करेगा

ट्रैप क्या है?

ट्रैप को नियंत्रण के हस्तांतरण के रूप में पहचाना जा सकता है, जो प्रोग्रामर द्वारा शुरू किया जाता है। शब्द ट्रैप शब्द का अपवाद (जो स्वचालित रूप से होने वाला सॉफ़्टवेयर इंटरप्ट होता है) के साथ एकांतर रूप से उपयोग किया जाता है लेकिन कुछ तर्क कर सकते हैं कि एक जाल केवल एक विशेष उपनगरीय कॉल है। इसलिए वे सॉफ़्टवेयर-आयुक्त इंटरप्ट की श्रेणी में आते हैं। उदाहरण के लिए, 80 × 86 मशीनों में, एक प्रोग्रामर एक जाल को आरंभ करने के लिए int निर्देश का उपयोग कर सकता है क्योंकि एक जाल हमेशा बिनशर्त होता है इसलिए नियंत्रण हमेशा जाल के साथ जुड़े उपनेमका में स्थानांतरित किया जाएगा। सटीक निर्देश, जो कि जाल को संभालने के लिए नियमितता का आह्वान करता है, आसानी से पहचाना जाता है क्योंकि एक स्पष्ट अनुदेश का प्रयोग जाल को निर्दिष्ट करने के लिए किया जाता है।

इंटरप्ट एंड ट्रैप के बीच अंतर क्या है?

इंटरप्ट्स हार्डवेयर इंटरप्ट हैं, जबकि जाल सॉफ़्टवेयर-इनक्लाउट्स इंटरप्ट हैं हार्डवेयर इंटरप्ट के कारण आमतौर पर अन्य हार्डवेयर इंटरप्ट को अक्षम करते हैं, लेकिन यह जाल के लिए सही नहीं है। यदि आपको एक हार्डवेयर ट्रांज़ेबल तक हार्डवेयर इंटरप्ट्स को अस्वीकार करने की आवश्यकता है, तो आपको इंटरप्ट फ्लैग को स्पष्ट रूप से साफ़ करना होगा। और आम तौर पर कंप्यूटर पर इंटरप्ट फ्लैग (हार्डवेयर) इंटरप्ट होता है, जो कि जाल के विपरीत होता है। इसका मतलब यह है कि इस ध्वज को साफ़ करने से जाल को रोका नहीं जाएगा। जाल के विपरीत, इंटरप्ट को सीपीयू की पिछली स्थिति को संरक्षित करना चाहिए।