Was ist der Unterschied zwischen Signal und Interrupt

Das Hauptunterschied zwischen Signal und Interrupt ist das Signal ist ein Ereignis, das von der CPU oder der auf der CPU laufenden Software ausgelöst wird, während ein Interrupt ein Ereignis ist, das von einer anderen externen Komponente als der CPU ausgelöst wird.

Ein Signal ist ein Ereignis, das von der CPU ausgelöst wird. Diese Signale werden an verschiedene Prozesse gesendet, die auf dem Computer ausgeführt werden. Auf der anderen Seite ist ein Interrupt ein Ereignis, das aufgrund einer externen Komponente wie z. B. Zeitgebern auftritt, um die CPU zu benachrichtigen, eine bestimmte Aktion auszuführen.

Wichtige Bereiche

1. Was ist Signal?
     - Definition, Funktionalität
2. Was ist Interrupt?
     - Definition, Funktionalität
3. Was sind die Ähnlichkeiten zwischen Signal und Interrupt
     - Überblick über allgemeine Funktionen
4. Was ist der Unterschied zwischen Signal und Interrupt
     - Vergleich der wichtigsten Unterschiede

Schlüsselbegriffe

CPU, Interrupt, Signal

Was ist Signal?

Ein Signal ist ein Ereignis, das von der CPU ausgelöst wird. Dies kann ein Interrupt sein, der durch die auf der CPU ausgeführte Software verursacht wird. Dies wird als Software-Interrupt bezeichnet. Es kann auch CPU-Hardware sein, die bestimmte Ereignisse auslöst. Darüber hinaus basieren die Signale auf dem Betriebssystem. Daher erzeugen zwei Systeme mit unterschiedlichen Betriebssystemen unterschiedliche Signale.

Weiterhin gibt es synchrone Signale sowie asynchrone Signale. Synchronsignale treten als Reaktion auf eine bestimmte Aktion auf, und die CPU reagiert auf diese Aktion. In asynchronen Signalen gibt es dagegen keine direkte Antwort auf eine bestimmte Aktion, die aufgetreten ist.

Was ist Interrupt?

Ein Interrupt ist ein Ereignis, das extern von anderen Komponenten als der CPU auftritt. Sie benachrichtigt die CPU über ein externes Ereignis. Ein IO-Gerät wie ein Netzwerkgerät kann einen Interrupt senden, um die empfangenen Datenpakete anzuzeigen. Außerdem kann ein Timer der CPU ein Timeout-Ereignis melden. Ein Interrupt hängt von der physischen Plattform und der Konfiguration dieser Plattform ab. Daher haben zwei identische Plattformen den gleichen Interrupt. Außerdem treten Unterbrechungen asynchron auf.

Ähnlichkeiten zwischen Signal und Interrupt

  • Signale und Interrupts haben eindeutige IDs.
  • Beide können maskiert werden. Sie helfen dabei, die Benachrichtigung, die das Signal oder Interrupt sendet, zu deaktivieren oder auszusetzen.

Unterschied zwischen Signal und Interrupt

Definition

Ein Signal ist ein Ereignis, das von der CPU oder der auf der CPU laufenden Software ausgelöst wird. Im Gegensatz dazu ist ein Interrupt ein Ereignis, das durch andere externe Komponenten als die CPU ausgelöst wird, die die CPU warnen, eine bestimmte Aktion auszuführen. Der Hauptunterschied zwischen Signal und Interrupt ergibt sich aus diesen Definitionen. 

Abhängigkeit

Während ein Signal von der Plattform abhängt, hängt ein Interrupt vom Betriebssystem ab. Dies ist also ein wichtiger Unterschied zwischen Signal und Interrupt.

Signalart

Ein weiterer Unterschied zwischen Signal und Interrupt besteht darin, dass ein Signal synchron oder asynchron sein kann, während ein Interrupt asynchron ist.

Maske

Darüber hinaus verwendet ein Signal eine Prozesssignalmaske, während ein Interrupt eine Vor-CPU-Interruptmaske verwendet.

Verbindung mit der CPU

Die CPU sendet die Signale an Prozesse, während die CPU die Interrupts von externen Komponenten empfängt. Dies ist ein weiterer Unterschied zwischen Signal und Interrupt.

Fazit

Der Unterschied zwischen Signal und Interrupt besteht darin, dass das Signal ein Ereignis ist, das von der CPU oder der auf der CPU laufenden Software ausgelöst wird, während ein Interrupt ein Ereignis ist, das von einer anderen externen Komponente als der CPU ausgelöst wird.

Referenz:

1. “Interrupts und Signale Intro”, Udacity, 23. Februar 2015, hier erhältlich.
2. “Was ist eine Unterbrechung? - Definition von Techopedia. ”Techopedia.com, hier erhältlich.

Bildhöflichkeit:

1. "ANS700-CPU-Board" Von Henrik Wannheden - Eigene Arbeit (Public Domain) über Commons Wikimedia