Interrupt
Ein Interrupt ist ein Signal, das an den Prozessor gesendet wird und den aktuellen Prozess unterbricht. Er kann von einem Hardwaregerät oder einem Softwareprogramm erzeugt werden.
Ein Hardware-Interrupt wird häufig von einem Eingabegerät wie einer Maus oder einer Tastatur erzeugt. Wenn Sie beispielsweise ein Textverarbeitungsprogramm verwenden und eine Taste drücken, muss das Programm die Eingabe sofort verarbeiten. Die Eingabe von „hello“ erzeugt fünf Interruptanforderungen, sodass das Programm die eingegebenen Buchstaben anzeigen kann. Ebenso senden Sie jedes Mal, wenn Sie eine Maustaste anklicken oder auf einen Touchscreen tippen, ein Interruptsignal an das Gerät.
Software-Interrupts werden verwendet, um Fehler und Ausnahmen zu behandeln, die während der Ausführung eines Programms auftreten. Wenn ein Programm beispielsweise erwartet, dass eine Variable eine gültige Zahl ist, der Wert aber null lautet, kann ein Interrupt erzeugt werden, um einen Absturz des Programms zu verhindern. Dadurch kann das Programm den Ablauf ändern und den Fehler behandeln, bevor es fortfährt. Ebenso kann ein Interrupt verwendet werden, um eine Endlosschleife zu beenden, die ein Speicherleck verursachen oder dazu führen könnte, dass ein Programm nicht mehr reagiert.
Sowohl Hardware- als auch Software-Interrupts werden von einem Interrupt-Handler verarbeitet, der auch als Interrupt-Service-Routine oder ISR bezeichnet wird. Wenn ein Programm eine Interruptanforderung empfängt, verarbeitet die ISR das Ereignis und das Programm wird fortgesetzt. Da Interrupts oft nur so kurz wie ein Tastendruck oder Mausklick sind, werden sie häufig in weniger als einer Millisekunde verarbeitet.
Testen Sie Ihr Wissen