Geprioriteerde interrupts stellen computers in staat om veel programma's tegelijkertijd uit te voeren.
Afbeelding tegoed: Jupiterimages/Photos.com/Getty Images
Hoewel sommige computers, zoals die waarop uw broodroosteroven werkt, één taak tegelijk uitvoeren, hebben desktop-pc's, smartphones en mainframes meerdere processen tegelijk. De computer regelt dit door middel van systeemonderbrekingen, een mechanisme waarbij het ene programma tijdelijk voorrang krijgt op het andere. De centrale verwerkingseenheid laat verschillende soorten onderbrekingen toe op basis van een vooraf bepaalde taakhiërarchie.
Meerdere programma's
Een moderne pc, smartphone of server heeft meerdere programma's in het geheugen, hoewel de CPU er maar een handvol op een bepaald moment draait; de meeste zijn inactief. Programma's omvatten toepassingen zoals uw tekstverwerker, spreadsheet en e-mail, hulpprogramma's zoals: geheugenmonitors en afdrukspoolers, en de programma's die de netwerkkaart, het toetsenbord en de luidsprekers. Wanneer een belangrijk programma onderhoud nodig heeft, geeft het een onderbreking aan de CPU, die ander werk in uitvoering stopt om voor de dringende taak te zorgen. De CPU bedient de interrupt alleen als deze voorrang heeft op andere taken.
Video van de dag
Hardware-onderbrekingen
Harde schijven, netwerkkaarten, printers en andere apparaten geven hardware-interrupts af om de aandacht van de CPU te trekken. Een programma vraagt bijvoorbeeld gegevens op van de harde schijf; hoewel deze taak ongeveer 10 milliseconden duurt, is dit een lange tijd voor de CPU, die in de tussentijd ander werk doet. Wanneer de harde schijf de gegevens vindt, geeft deze een hardware-interrupt uit, waarbij de CPU wordt verteld tijdelijk te stoppen met wat hij aan het doen is en de gegevens aan het aanvragende programma te leveren.
Software-onderbrekingen
Programma's geven software-interrupts uit om speciale verzoeken af te handelen via het besturingssysteem van de computer. In uw tekstverwerker wilt u bijvoorbeeld de datum in een paginakop plakken. De tekstverwerker geeft een software-interrupt af en vraagt om de datum van Microsoft Windows. De tekstverwerker wacht even terwijl Windows de datum ophaalt uit de systeemkalender. Wanneer de datum gereed is, geeft Windows de controle terug aan de tekstverwerker. Software-interrupts hebben een relatief lage prioriteit. als de CPU tijdens het ophalen van de datum een verzoek van de harde schijf ontvangt, bedient de CPU eerst de onderbreking van de harde schijf en voltooit het ophalen van de datum.
CPU-vallen
Het besturingssysteem reserveert verschillende interrupts met zeer hoge prioriteit voor noodgevallen. De gegevens van een programma raken bijvoorbeeld beschadigd, waardoor het vastloopt. Het besturingssysteem geeft een CPU-trap uit die het programma stopt en een waarschuwingsbericht op het scherm weergeeft om u te laten weten wat er is gebeurd. In meer extreme gevallen ontwikkelt het besturingssysteem zelf een ernstig probleem. Het geeft een andere CPU-trap uit die een diagnostisch bericht weergeeft en alle verwerking stopt.