Unterschied zwischen Interrupt und Ausnahme

Unterschied zwischen Interrupt und Ausnahme

Interrupt und Ausnahme sind zwei unterschiedliche Konzepte, aber sie sind in dem Sinne ähnlich, dass beide die CPU den normalen Ausführungfluss von Anweisungen zum Stoppen bringen, um ein anderes Programm im Kernelraum auszuführen, um sie zu verarbeiten. Der Hauptunterschied ist, wie sie mit den unerwarteten Ereignissen umgehen, die irgendwo im System, im Prozessor oder im Programm selbst auftreten.

Unterbrechen

Interrupt ist ein Signal, das von externen Geräten an die CPU gesendet wird, die aus dem System an den Computer oder ein Programm angeschlossen sind, für das das Betriebssystem in den laufenden Prozess eingreifen muss. Interrupts sind, wie der Name schon sagt, abrupt. Es fordert das Betriebssystem auf, sofort Maßnahmen zu ergreifen, was als nächstes zu tun ist. Diese unerwarteten Ereignisse hängen normalerweise mit einem E/A -Gerät zusammen, das sich hauptsächlich mit der Außenwelt befasst. Wenn Sie beispielsweise eine Taste auf der Tastatur drücken oder die Maus verschieben, löst sie Hardware -Interrupts aus. Wenn also ein Interrupt auftritt. Die Kontrolle wird auf das Betriebssystem übertragen, sobald ein Interrupt auftritt. Interrupts werden priorisierte Bedeutung Interrupts mit einer sofortigen Aufmerksamkeit mit hoher Priorität und müssen zuerst behandelt werden.

Ausnahme

Die Begriffsausnahme ist kurz für ein außergewöhnliches Ereignis und bezieht sich auf unerwartete Ereignisse, die irgendwo im System, im Prozessor oder in einem Programm existieren, das die Aufmerksamkeit der CPU erfordert. Ausnahmen stören den normalen Anweisungsfluss, wie unterrupt. Wenn Sie beispielsweise dem Prozessor befehlen, eine Zahl durch Null zu teilen, wird eine Ausnahme von Divide-by-Null angezeigt, wodurch der Computer die Berechnung einstellt oder eine Fehlermeldung angezeigt wird. Wenn eine Ausnahme eintritt. Ausnahmen können im Allgemeinen als von Prozessor detektierte Ausnahmen und programmierte Ausnahmen klassifiziert werden. Ersteres tritt auf, wenn die CPU bei der Ausführung einer Anweisung jegliche Art von Anomalie erkennt, während letzteres auf Anfrage des Programmierers erzeugt wird.

Unterschied zwischen Interrupt und Ausnahme

Definition

- Interrupts sind, wie der Name vermuten lässt. Die Kontrolle wird auf das Betriebssystem übertragen, sobald ein Interrupt auftritt. Ausnahmen sind andererseits außergewöhnliche Ereignisse, die den normalen Anweisungsfluss stören, aber während der Programmausführung auftreten, die außergewöhnlich sind und nicht im Programm selbst behandelt werden können. Die Informationen über die Ausnahme einschließlich ihrer Quelle und ihres Typs werden in einem Objekt als außergewöhnliches Objekt gespeichert.

Quelle

- Wenn eine Taste auf eine Tastatur gedrückt wird oder die Maus verschoben wird, löst sie Hardware -Interrupts aus. Software -Interrupts können durch Programmausführungsfehler ausgelöst werden und werden häufig als Ausnahmen bezeichnet. Ausnahmen werden irgendwo im System, im Prozessor oder in einem Programm generiert, das die Aufmerksamkeit der CPU erfordert. Wenn Sie beispielsweise dem Prozessor befehlen, eine Zahl durch Null zu teilen, wird eine Ausnahme von Divide-by-Null angezeigt, wodurch der Computer die Berechnung einstellt oder eine Fehlermeldung angezeigt wird.

Typ

- Interrupts können allgemein als synchrone und asynchrone Interrupts eingestuft werden. Synchronen Interrupts werden jedes Mal ausgelöst, wenn eine Anweisung von der CPU ausgeführt wird und als synchron bezeichnet wird, da die CPU sie erst nach Beendigung der Ausführung der Anweisung ausstellt. Asynchrone Interrupts treten auf, wenn eine externe Anomalie den Prozessor unterbricht. Ausnahmen können im Allgemeinen als von Prozessor detektierte Ausnahmen und programmierte Ausnahmen klassifiziert werden. Ersteres tritt auf, wenn die CPU bei der Ausführung einer Anweisung jegliche Art von Anomalie erkennt, während letzteres auf Anfrage des Programmierers erzeugt wird.

Handhabung

- Interrupt ist eine Ausnahmeklasse, und die Ausnahme ist hauptsächlich in vier Klassen unterteilt: Interrupt, Fehler, Falle und Abbruch. Unterbrechungen und Ausnahmen bringen beide abrupt den aktuellen Ausführungfluss von Anweisungen zum Stillstand. Interrupts werden priorisierte Bedeutung Interrupts mit einer sofortigen Aufmerksamkeit mit hoher Priorität und werden zuerst behandelt. Wenn ein Interrupt oder eine Ausnahme festgestellt wird. Der Prozessor setzt die Kontrolle des unterbrochenen Prozesses wieder auf, sobald die Ausführung des Handlers durchgeführt wird.

Interrupt vs. Ausnahme: Vergleichstabelle

Zusammenfassung

Sowohl Interrupts als auch Ausnahmen sind unerwartete Ereignisse, die irgendwo im System, im Prozessor oder in einem Programm stattfinden, das sofortige Aufmerksamkeit der CPU erfordert. Beide bringen abrupt den aktuellen Ausführungfluss von Anweisungen zum Stillstand. Wenn ein Interrupt oder eine Ausnahme festgestellt wird. Der Prozessor setzt die Kontrolle des unterbrochenen Prozesses wieder auf, sobald die Ausführung des Handlers durchgeführt wird. Wenn es mehrere Interrupts gibt, sollte der Interrupt mit der höchsten Priorität zuerst behandelt werden. Ein Schlüsselunterschied zwischen den beiden Bedingungen besteht darin, dass Interrupts durch externe Ereignisse ausgelöst werden, während Ausnahmen aus dem Prozessor ausgelöst werden.