Interrupt
Uit Wikipedia, de vrije encyclopedia
In de computertechniek is een interrupt (letterlijk onderbreking) een verzoek om aandacht van een hardwarecomponent aan een andere component, meestal een processor. De interrupt werd voor het eerst toegepast in de X1-computer van Electrologica, en werd toen nog ingreep genoemd. De afkorting IRQ komt van interrupt request, een aanvraag voor een onderbreking.
Op een fysiek niveau zijn verschillende onderdelen van een elektronisch toestel verbonden met een aantal lijnen. Door zo'n lijn te activeren, geeft een component (bijvoorbeeld ethernetchip) door dat hij aandacht van de ander wil. Deze verandering van de toestand gebeurt typisch door het inverteren van de spanning (+3V naar 0V of omgekeerd). De interrupt-ingang kan gevoelig zijn voor het niveau, of voor verandering van niveau (flank).
In het geval van een processor, reageert deze door een interrupt service routine (ISR) uit te voeren. Deze ISR wordt bij voorkeur zo kort mogelijk gehouden, zodat de processor ook aan het hoofdprogramma toekomt en klaar is om nieuwe interrupts af te handelen.
Veel digitale systemen, zoals personal computers, zijn interruptgebaseerd. Wanneer bijvoorbeeld een toets wordt ingedrukt op een toetsenbord, dan genereert dit een interrupt die er uiteindelijk voor gaat zorgen dat een bepaalde letter op het scherm wordt getoond of een bepaalde opdracht wordt uitgevoerd. Ook op meer voor de gebruiker verborgen manieren ligt dit mechanisme aan de basis: een netwerkinterface genereert bij het binnenkomen van nieuwe data interrupts aan de processor om aan te duiden dat nieuwe data beschikbaar zijn. Op deze manier is de processor in veel gevallen voornamelijk bezig met het wachten op interrupts en het uitvoeren van de opdrachten die bij deze interrupts horen.