Prozessstatus-Benachrichtigungsroutine für Änderungen
Zweck
Ermöglicht die Benachrichtigung von Kernelerweiterungen über wichtige Prozess-und Threadstatusübergänge.
Syntax
Parameter
| Element | Beschreibung |
|---|---|
| Bedingung | Verweist auf die im Aufruf Prochadd verwendete Struktur Proch oder auf die im Aufruf Proch_reg verwendete Struktur Prochr . |
| Typ | Definiert das gemeldete Statusänderungsereignis: Prozessinitialisierung, Prozessbeendigung, Prozessexec, Threadinitialisierung oder Threadbeendigung. Diese Werte sind in der Datei /usr/include/sys/proc.h definiert. Die Werte, die als Typ übergeben werden können, hängen auch davon ab, wie der Aufruf angefordert wird. Mögliche prochadd_handler Typ -Werte:
Mögliche proch_reg_handler Typ -Werte:
|
| id | Definiert entweder die Prozess-ID oder die Thread-ID. |
Beschreibung
Der Benachrichtigungsaufruf wird entweder mit dem Prochadd -oder dem Proch_reg -Kernel-Service eingerichtet. Wenn Sie die Benachrichtigung über den Kernel-Service Prochadd anfordern, folgt der Aufruf der Syntax, die zuerst als prochadd_handlerangezeigt wird. Wenn Sie die Benachrichtigung mit dem Proch_reg -Kernel-Service anfordern, folgt der Aufruf der Syntax, die als zweite angezeigt wird: proch_reg_handler.
Bei der Prozessinitialisierung wird die Routine Prozessstatusänderungsbenachrichtigung in der Ausführungsumgebung eines übergeordneten Prozesses für die Initialisierung eines neu erstellten untergeordneten Prozesses aufgerufen. Für Kernelprozesse wird die Benachrichtigungsroutine aufgerufen, wenn der Initialisierung -Kernel-Service aufgerufen wird, um die Initialisierung abzuschließen.
Bei der Prozessbeendigung werden die Benachrichtigungsroutinen aufgerufen, bevor der Kernel Standardbeendigungsprozeduren verarbeitet. Die Routinen müssen so geschrieben werden, dass sie keine Ressourcen unter dem Beendigungsprozess zuordnen. Die Benachrichtigungsroutine wird unter dem Prozessimage des beendenden Prozesses aufgerufen.