Een interrupt is een signaal dat naar de processor wordt gestuurd om aan te geven dat er een specifieke gebeurtenis heeft plaatsgevonden die onmiddellijke aandacht vereist. Het wordt gebruikt om het huidige proces te onderbreken en weer op te starten zodra de interrupt is afgehandeld.
Interrupts kunnen worden gecategoriseerd in twee soorten: hardware interrupts en software interrupts. Hardware interrupts worden geïnitieerd door randapparatuur zoals een toetsenbord, muis of printer, terwijl software interrupts worden gegenereerd door de processor zelf.
Wanneer een interrupt optreedt, zal de processor het huidige proces tijdelijk onderbreken en een subroutine uitvoeren die bekend staat als een interrupt service routine (ISR). ISR’s zijn verantwoordelijk voor het afhandelen van de interrupt en het herstellen van de context van de processor alvorens terug te keren naar het oorspronkelijke proces.
Interrupts kunnen door de processor worden geprioriteerd. Hierdoor krijgen interrupts met een hogere prioriteit voorrang op interrupts met een lagere prioriteit. Interrupts met een lagere prioriteit kunnen worden vertraagd of volledig genegeerd totdat de processor klaar is met het afhandelen van interrupts met een hogere prioriteit.
Interrupts worden vaak gebruikt in real-time systemen waar timing kritisch is. In deze systemen worden interrupts gebruikt om gebeurtenissen tijdig af te handelen, bijvoorbeeld wanneer een apparaat moet worden onderhouden of een gegevenspakket over het netwerk moet worden verzonden.
Om de verschillende interrupts te beheren, gebruiken processoren interrupt controllers. Dit zijn gespecialiseerde hardwarecomponenten die verantwoordelijk zijn voor het beheer van de stroom interrupts naar de processor.
Interrupt handlers zijn routines die verantwoordelijk zijn voor het afhandelen van interrupts. Deze routines bevatten gewoonlijk instructies die de processor vertellen wat hij moet doen wanneer een interrupt optreedt.
Interrupt latentie is de tijd die het duurt voordat een interrupt door de processor wordt behandeld. Interruptlatentie kan variëren afhankelijk van het type interrupt en het aantal interrupts dat aanwezig is. Een lage interruptlatentie is essentieel voor real-time systemen waar timing cruciaal is.
De term interrupt is een essentieel onderdeel van elk computersysteem, omdat het de processor in staat stelt te worden gewaarschuwd en te reageren op externe gebeurtenissen. Interrupts zijn er in twee soorten, hardware en software, en worden beheerd door interrupt controllers. Ze worden onderhouden door interrupt-handlers en hun latentie kan variëren, afhankelijk van het type en het aantal aanwezige interrupts. Interrupts worden ook vaak gebruikt in real-time systemen om tijdig te kunnen reageren op gebeurtenissen.
Het synoniem van interrupt is “storing”.
Het wordt algemeen beschouwd als onbeleefd om iemand te onderbreken. Dat komt omdat onderbreken de gespreksstroom kan verstoren en de communicatie kan verstoren. Bovendien kan onderbreken gezien worden als een teken van gebrek aan respect.
Een interrupt is een gebeurtenis waardoor de computer stopt met wat hij aan het doen is en iets anders gaat doen. Bijvoorbeeld, wanneer u op een toets van het toetsenbord drukt, wordt een interrupt gegenereerd. De computer stopt met wat hij aan het doen is en begint de ingedrukte toets te lezen.
Er zijn twee soorten interrupts: hardware interrupts en software interrupts.
Hardware interrupts worden gegenereerd door hardware apparaten, zoals het toetsenbord of de muis. Ze worden meestal gebruikt om de CPU een signaal te geven dat er een gebeurtenis heeft plaatsgevonden.
Software interrupts worden gegenereerd door software, zoals een besturingssysteem of applicatie. Ze worden meestal gebruikt om de CPU te laten weten dat een proces moet worden uitgevoerd.
Er zijn drie soorten interrupts: hardware interrupts, software interrupts en resets. Hardware interrupts worden gegenereerd door hardware apparaten, zoals een toetsenbord of muis. Software interrupts worden gegenereerd door software, zoals een proces of thread. Resets worden gegenereerd door het systeem, meestal als reactie op een hardware- of softwarefout.