Was sind Systemunterbrechungen?

Hauptrechner

Priorisierte Interrupts ermöglichen es Computern, viele Programme gleichzeitig auszuführen.

Bildnachweis: Jupiterimages/Photos.com/Getty Images

Obwohl einige Computer, wie der, der Ihren Toaster betreibt, eine Aufgabe nach der anderen ausführen, arbeiten Desktop-PCs, Smartphones und Großrechner gleichzeitig mit mehreren Prozessen. Der Computer verwaltet dies durch Systeminterrupts, einen Mechanismus, durch den ein Programm vorübergehend Vorrang vor anderen erhält. Die Zentraleinheit erlaubt verschiedene Arten von Interrupts basierend auf einer vorbestimmten Taskhierarchie.

Mehrere Programme

Ein moderner PC, Smartphone oder Server hält mehrere Programme im Speicher, obwohl die CPU jeweils nur eine Handvoll läuft; die meisten sind untätig. Zu den Programmen gehören Anwendungen wie Textverarbeitung, Tabellenkalkulation und E-Mail, Hilfsfunktionen wie Speichermonitore und Druckspooler sowie die Programme zur Verwaltung der Netzwerkkarte, Tastatur und Sprecher. Wenn ein wichtiges Programm gewartet werden muss, gibt es einen Interrupt an die CPU aus, die andere laufende Arbeiten anhält, um sich um die dringende Aufgabe zu kümmern. Die CPU bedient den Interrupt nur, wenn er Vorrang vor anderen Tasks hat.

Video des Tages

Hardware-Interrupts

Festplatten, Netzwerkkarten, Drucker und andere Geräte geben Hardware-Interrupts aus, um die Aufmerksamkeit der CPU zu erregen. Beispielsweise fordert ein Programm Daten von der Festplatte an; Obwohl diese Aufgabe etwa 10 Millisekunden dauert, ist dies eine lange Zeit für die CPU, die in der Zwischenzeit andere Arbeiten verrichtet. Wenn die Festplatte die Daten findet, gibt sie einen Hardware-Interrupt aus, der die CPU anweist, ihre Aktivitäten vorübergehend zu stoppen und die Daten an das anfordernde Programm zu liefern.

Software-Interrupts

Programme geben Software-Interrupts aus, um spezielle Anforderungen über das Betriebssystem des Computers zu verarbeiten. In Ihrem Textverarbeitungsprogramm möchten Sie beispielsweise das Datum in eine Seitenüberschrift einfügen. Das Textverarbeitungsprogramm gibt einen Software-Interrupt aus und fordert das Datum von Microsoft Windows an. Das Textverarbeitungsprogramm wartet kurz, während Windows das Datum aus dem Systemkalender abruft. Wenn das Datum fertig ist, gibt Windows die Kontrolle an das Textverarbeitungsprogramm zurück. Software-Interrupts haben eine relativ niedrige Priorität. Wenn die CPU beim Abrufen des Datums eine Anforderung von der Festplatte erhält, bedient die CPU zuerst die Festplattenunterbrechung und beendet dann das Abrufen des Datums.

CPU-Fallen

Das Betriebssystem reserviert mehrere Interrupts mit sehr hoher Priorität für Notfälle. Beispielsweise werden die Daten eines Programms beschädigt, was zum Absturz führt. Das Betriebssystem gibt einen CPU-Trap aus, der das Programm stoppt und eine Warnmeldung auf dem Bildschirm anzeigt, die Sie darüber informiert, was passiert ist. In extremeren Fällen entwickelt das Betriebssystem selbst ein schwerwiegendes Problem. Es gibt einen weiteren CPU-Trap aus, der eine Diagnosemeldung anzeigt und die gesamte Verarbeitung anhält.