Herunterladen Inhalt Inhalt Diese Seite drucken

Siemens SINIXV5.41 (MX300/WX200) Referenzhandbuch Seite 879

Inhaltsverzeichnis

Werbung

(5)
Signal
BEZEICHNUNG
sig n a l - Signale
ÜBERSICHT
#include < sig n al.h >
BESCHREIBUNG
Ein Signal ist die Anzeige eines asynchronen Ereignisses. Man spricht von Signaler­
zeugung für (oder Signalzustellung an) einen Prozeß, die genau dann eintritt, wenn
das
diesem
beispielsweise Hardwarefehler, Zeitablauf, Aktivitäten am Terminal und Sys­
temaufrufe von k i l l oder sigsend. Unter bestimmten Umständen erzeugt ein
Ereignis Signale für mehrere Prozesse gleichzeitig. Es ist möglich, daß Prozesse
Einzelheiten über die Quelle und den Grund für die Erzeugung von Signalen anfor­
dern (siehe s i g in f o(5)).
Jeder Prozeß kann als Reaktion auf ein Signal eine bestimmte Systemtätigkeit
vereinbaren, die man Signalverarbeitung nennt. Die jeweils durch das System zu
ergreifende Aktion ist durch den Vaterprozeß initialisiert. Eine einmal eingestellte
Aktion für ein bestimmtes Signal bleibt gewöhnlich solange gültig, bis diese explizit
mittels eines Aufrufs von s ig a c tio n ,
ersetzt wird oder bis sich der Prozeß mittels exec überlagert (siehe sig a ctio n (2 )
and sig n al(2)). Im letzteren Fall wird die Signalbehandlung aller abgefangenen
Signale auf
S I G _ D F L
das System dazu zu veranlassen, die Signalbehandlung eines abgefangenen Signals
unmittelbar danach automatisch wieder auf
und sign al(2)).
Ein Signal gilt als an den Prozeß übergeben, wenn die entsprechende Aktion für
dieses Signal im Prozeß ausgeführt wird. Während des Zeitraums zwischen Sig­
nalerzeugung und seiner Zustellung bezeichnet man ein Signal als anstehend (siehe
sigpending(2)). Gewöhnlich kann dieser Zeitraum von einer Applikation nicht
bestimmt werden, jedoch ist es möglich, die Auslieferung eines Signals an den
Prozeß zu blockieren (siehe sig n al(2) und sigprocmask(2)). Wird ein blockiertes
Signal erzeugt und ist als dessen Signalbehandlung "nicht ignorieren" eingestellt,
verharrt das Signal im Zustand des "Anstehens", bis entweder die Blockierung auf­
gehoben wird oder aber die Signalbehandlung auf "ignorieren" umgestellt wird. Ist
für ein blockiertes Signal als Signalbehandlung "ignorieren" eingestellt, wird das
Signal bei der Erzeugung unverzüglich verworfen.
Für jeden Prozeß existiert eine Signalmaske, die die blockierten Signale ausblendet,
so daß diese nicht zugestellt werden (siehe sigprocmask(2)). Diese Signalmaske ist
durch den Vaterprozeß initialisiert.
Die Art der Reaktion auf ein Signal wird zum Zeitpunkt der Auslieferung bes­
timmt, so daß zwischen Erzeugung und Auslieferung jederzeit noch Änderungen
möglich sind, und zwar unabhängig von den ursprünglichen Ursachen der Sig­
nalerzeugung.
5-38
Signal
zugeordnete
zurückgesetzt. Darüberhinaus gibt es noch die Möglichkeit,
Ereignis eintrifft.
Solche
sig n a l oder s i g s e t durch eine neue
zu setzen (siehe sig a ctio n (2 )
S I G _ D F L
signal (5)
Ereignisse
sind
04/92

Werbung

Inhaltsverzeichnis
loading

Diese Anleitung auch für:

Sinixv5.40 (mx500)

Inhaltsverzeichnis