इंटरप्ट आणि ट्रॅप दरम्यान फरक

Anonim

इंटरप्ट vs ट्रॅप

अशा इव्हेंटमध्ये प्रोग्रामच्या सामान्य अंमलबजावणीदरम्यान, अशा घटना असू शकतात ज्यामुळे CPU तात्पुरते स्थगित होऊ शकते. यासारख्या कार्यक्रमांना व्यत्यय म्हणतात. सॉफ्टवेअर किंवा हार्डवेअर दोषांमुळे इंटरप्ट होऊ शकतात. हार्डवेअरच्या व्यत्ययांना (फक्त) इंटरप्ट्स म्हटले जाते, तर सॉफ्टवेअर इंटरप्टला अपवाद किंवा सापळे म्हटले जाते. एक अपवाद म्हणजे स्वयंचलितरित्या व्युत्पन्न सॉफ्टवेअर इंटरप्ट असते, तर ट्रॅप एक प्रोग्रामर द्वारे सुरू केलेला सॉफ्टवेअर-इनक्व्ड इंटरप्ट आहे. इंटरप्ट (सॉफ़्टवेअर किंवा हार्डवेअर) उठल्यावर एकदा नियंत्रण ISR (इंटरप्ट सेवा नियमानुसार) नावाच्या विशेष उपनियमांकडे हस्तांतरित केले जाते जे इंटरप्ट द्वारे उठविलेली परिस्थिती हाताळू शकते.

इंटरप्ट म्हणजे काय?

इंटरप्ट सामान्यतः हार्डवेअर इंटरप्ट साठी आरक्षित आहे. ते बाह्य हार्डवेअर इव्हेंटमुळे होणारे प्रोग्राम नियंत्रण व्यत्यय आहेत येथे, CPU बाह्य बाह्य माध्यम हार्डवेअर व्यत्यय सामान्यत: टाइमर चिप, परिघीय साधने (कीबोर्ड, माउस इ.), आय ओ ओ पोर्ट्स (सिरीयल, पॅरलल, इत्यादी), डिस्क ड्राईव्ह, CMOS घड्याळ, विस्तार कार्ड (ध्वनि कार्ड, व्हिडिओ कार्ड इ.) याचा अर्थ असा की कार्यप्रणाली प्रोग्रामशी संबंधित काही कार्यक्रमामुळे हार्डवेअरमध्ये व्यत्यय येऊ शकत नाहीत. उदाहरणार्थ, वापरकर्त्याद्वारे कीबोर्डवरील कि प्रेसवरील एखादा इव्हेंट, किंवा अंतर्गत हार्डवेअर टाइमर वेळसमाप्ती या प्रकारचा इंटरप्ट आणू शकतो आणि सीपीयूला कळवू शकतो की विशिष्ट डिव्हाइसला काही लक्ष देण्याची आवश्यकता आहे अशा स्थितीत ज्याप्रमाणे सीपीयू जे काही करत होता ते थांबेल (i सध्याचे प्रोग्राम थांबवते), यंत्राद्वारे आवश्यक असलेली सेवा प्रदान करते आणि सामान्य कार्यक्रमात परत येईल. जेव्हा हार्डवेयर व्यत्यय येतो आणि CPU ने ISR सुरू करतो, तेव्हा इतर हार्डवेअर व्यत्यय अक्षम होतात (उदा. 80 × 86 मशीनमध्ये). ISR चालू असताना आपल्याला इतर हार्डवेअर इंटरप्टची आवश्यकता असल्यास, आपल्याला त्यास व्यत्यय ध्वज साफ करून (sti सूचनासह) स्पष्टपणे करावे लागेल. 80 × 86 मशीनमध्ये, इंटरप्ट फ्लॅग साफ केल्याने हार्डवेअर इंटरप्ट्स प्रभावित होईल.

एक सापळा काय आहे?

ट्रॅप नियंत्रणाचे हस्तांतरण म्हणून ओळखले जाऊ शकते, जे प्रोग्रामरने सुरू केले आहे. टर्म ट्रॅप शब्द एक्सपेशन (जे स्वयंचलितरित्या येणार्या सॉफ्टवेअर इंटरप्ट आहे) सह अदलाबदलपणे वापरले जाते. पण काही जण म्हणतील की सापळा फक्त एक विशेष उपनगरीय कॉल आहे. त्यामुळे ते सॉफ़्टवेअर-चालविलेल्या इंटरप्टच्या श्रेणीत जातात. उदाहरणार्थ, 80 × 86 मशीनमध्ये, प्रोग्रामर एक सापळा आरंभ करण्यासाठी

इंट सूचना वापरू शकतो. एक जाळी नेहमी बिनशर्त असल्याने नियंत्रणे नेहमी सापळ्याशी संबंधित उपकार्यक्रमांमध्ये स्थानांतरीत केले जाईल. तंतोतंत सूचना, ज्याला ट्रॅप हाताळण्यासाठी नियमानुसार बोलावले जाते ते सहज ओळखले जाते कारण एक स्पष्ट सूचना सापळा निर्दिष्ट करण्यासाठी वापरली जाते.

इंटरप्ट आणि ट्रॅपमध्ये काय फरक आहे? इंटरप्ट हाडवेअर व्यत्यय आहेत, तर सापळे सॉफ़्टवेअर-इनक्लॉक्ट इंटरप्ट्स आहेत हार्डवेअर इंटरप्टस्च्या घटना सहसा इतर हार्डवेअर व्यत्यय अक्षम करते, परंतु हे सापळेसाठी खरे नाही. सापळा संपेपर्यंत हार्डवेअर इंटरप्ट नकारण्याची आवश्यकता असल्यास, आपल्याला इंटरप्ट फ्लॅग स्पष्टपणे साफ करण्याची आवश्यकता आहे. आणि सामान्यत: संगणकावरील इंटरप्ट फ्लॅप (हार्डवेअर) इंटरप्टस (जाळे) विरूद्ध प्रभावित करते. याचा अर्थ असा की या ध्वज साफ करणे सापळे थांबवू शकत नाही. सापळे वेगळे, व्यत्ययने CPU ची मागील स्थिती राखली पाहिजे.