અંતરાલ અને ટ્રેપ વચ્ચેનો તફાવત

Anonim

ઈન્ટરપટ વિ ટ્રેપ

કોઈ પણ કમ્પ્યુટરમાં, પ્રોગ્રામના તેના સામાન્ય અમલ દરમિયાન, એવી ઘટનાઓ હોઈ શકે છે જે CPU ને અસ્થાયી રૂપે અટકાવવાનું કારણ બની શકે છે. આ જેવી ઘટનાઓને ઇન્ટરપેટ્સ કહેવામાં આવે છે. ક્યાંતો સોફ્ટવેર અથવા હાર્ડવેર ખામીઓ દ્વારા અંતરાય થઈ શકે છે. હાર્ડવેર ઈન્ટ્રપ્ટોને (ખાલી) ઈન્ટરપેટ્સ કહેવામાં આવે છે, જ્યારે સોફ્ટવેર ઈન્ટ્રપ્ટોને એક્સેપ્શન્સ અથવા ફાંસો કહેવામાં આવે છે. અપવાદ એ એક સ્વયંચાલિત ઉત્પન્ન થયેલ સોફ્ટવેર ઇંટરપ્ટ છે, જ્યારે ટ્રેપ પ્રોગ્રામર દ્વારા શરૂ કરાયેલ સોફ્ટવેર-ઇન્ક્લુસ્ડ ઇન્રપ્ટ છે. એકવાર વિક્ષેપ (સૉફ્ટવેર અથવા હાર્ડવેર) ઊભા થાય પછી, નિયંત્રણ ISR (ઇંટર્રપ્ટ સેવા રાબેતાણ) તરીકે ઓળખાતા વિશેષ સબરાટિનને સ્થાનાંતરિત કરવામાં આવે છે જે અંતર્ગત ઉઠાવવામાં આવેલી શરતોને નિયંત્રિત કરી શકે છે.

અંતરાલ શું છે?

અવધિ શબ્દ સામાન્ય રીતે હાર્ડવેર ઈન્ટ્રપ્ટો માટે અનામત છે. તે બાહ્ય હાર્ડવેર ઇવેન્ટ્સના કારણે પ્રોગ્રામ નિયંત્રણ વિક્ષેપો છે અહીં, બાહ્ય અર્થ એ છે કે CPU હાર્ડવેર ઇન્ટરપરટ સામાન્ય રીતે ટાઈમર ચિપ, પેરિફેરલ ડિવાઇસ (કિબોર્ડ, માઉસ, વગેરે), આઇ / ઓ પોર્ટ (સીરીયલ, સમાંતર, વગેરે), ડિસ્ક ડ્રાઇવ્સ, CMOS ઘડિયાળ, વિસ્તરણ કાર્ડ્સ (ધ્વનિ કાર્ડ, વિડિઓ કાર્ડ, વગેરે). તેનો અર્થ એ કે એક્ઝેક્યુટિંગ પ્રોગ્રામથી સંબંધિત કેટલીક ઇવેન્ટને કારણે હાર્ડવેર ઇન્ટરપ્રટો લગભગ ક્યારેય બનતા નથી. ઉદાહરણ તરીકે, યુઝર દ્વારા કીબોર્ડ પર કી પ્રેસ જેવી ઇવેન્ટ, અથવા આંતરિક હાર્ડવેર ટાઈમર સમય સમાપ્ત થઈ જાય છે, આ પ્રકારની વિક્ષેપ ઉભો કરી શકે છે અને CPU ને તે જાણ કરી શકે છે કે જે ચોક્કસ ઉપકરણને અમુક ધ્યાનની જરૂર છે. એવી પરિસ્થિતિમાં કે જે CPU આમ કરી રહ્યું છે તે બંધ કરશે (હું વર્તમાન પ્રોગ્રામ વિરામ લેતો હતો), ડિવાઇસ દ્વારા આવશ્યક સેવા પૂરી પાડે છે અને સામાન્ય પ્રોગ્રામ પર પાછા આવી જશે. જ્યારે હાર્ડવેર ઇન્ટરપ્રટો થાય છે અને CPU એ ISR શરૂ કરે છે, તો અન્ય હાર્ડવેર ઈન્ટ્રપ્ટ્સ અક્ષમ છે (દા.ત. 80 × 86 મશીનોમાં) જો તમને ઇએસઆર ચાલી રહ્યું હોય ત્યારે થતા અન્ય હાર્ડવેર ઇન્ટરપ્રટોની જરૂર હોય તો, તમારે સ્પષ્ટપણે ઈન્ટ્રપ્ટ ધ્વજને સાફ કરીને (sti સૂચના સાથે) કરવાની જરૂર છે. 80 × 86 મશીનોમાં, અંતરાલ ધ્વજને સાફ કરવાથી ફક્ત હાર્ડવેર ઇન્ટરપ્રટોને અસર કરશે.

ટ્રેપ શું છે?

ટ્રેપને નિયંત્રણના સ્થળાંતર તરીકે ઓળખી શકાય છે, જે પ્રોગ્રામર દ્વારા શરૂ કરવામાં આવે છે. ટર્મ એક્સપ્શન (જે સ્વયંચાલિત રીતે બનતું સૉફ્ટવેર અંતર્ગત છે) સાથે શબ્દ ટ્રેપ એકબીજાના બદલે ઉપયોગમાં લેવાય છે. પરંતુ કેટલાક એવી દલીલ કરે છે કે છટકું માત્ર એક ખાસ સબરાઇટીન કોલ છે. તેથી તેઓ સોફ્ટવેર-ઇન્ક્સ્પ્ટ્સના શ્રેણીમાં આવે છે. ઉદાહરણ તરીકે, 80 × 86 મશીનમાં, પ્રોગ્રામર છટકું શરૂ કરવા માટે પૂર્ણાંક સૂચનાનો ઉપયોગ કરી શકે છે. કારણ કે એક છટકું હંમેશાં બિનશરતી હોય છે, નિયંત્રણ હંમેશાં છટકું સાથે સંકળાયેલ સબરાટિનને સ્થાનાંતરિત કરવામાં આવશે. ચોક્કસ સૂચના, કે જે છટકું સંભાળવા માટેના નિયમિતને આમંત્રણ આપે છે તે સહેલાઇથી ઓળખી કાઢવામાં આવે છે કારણ કે એક સ્પષ્ટ સૂચના છટકું સ્પષ્ટ કરવા માટે વપરાય છે.

ઈન્ટરપ્ટ અને ટ્રેપ વચ્ચે શું તફાવત છે?

ઈન્ટ્રપ્ટો હાર્ડવેર ઈન્ટ્રપ્ટ્સ છે, જ્યારે સરસામાન સોફ્ટવેર-ઇનપુટ કરેલા ઇન્ટરપ્રેટ્સ છે. હાર્ડવેર ઈન્ટ્રપ્ટોની ઘટનાઓ સામાન્ય રીતે અન્ય હાર્ડવેર ઈન્ટ્રપ્ટોને અક્ષમ કરે છે, પરંતુ ફાંસો માટે આ સાચું નથી. જો તમે ફૅકલ પ્રદાન કરવામાં ન આવે ત્યાં સુધી હાર્ડવેર ઇન્ટર્પોટ્સને નામંજૂર કરવાની જરૂર હોય તો, તમારે સ્પષ્ટ રીતે વિક્ષેપિત ફ્લેગ સાફ કરવાની જરૂર છે અને સામાન્ય રીતે કમ્પ્યુટર પર વિક્ષેપિત ધ્વજ ફાંસોના વિરોધમાં (હાર્ડવેર) ઇન્ટરપ્રેટ્સને અસર કરે છે. આનો અર્થ એ છે કે આ ધ્વજને સાફ કરવાથી ફાંસો અટકાવવામાં આવશે નહીં. ફાંસોથી વિપરીત, ઈન્ટ્રપ્ટ્સએ સીપીયુની પહેલાની સ્થિતિને જાળવી રાખવી જોઈએ.