mithras
08-11-2002, 18:36
Ich erstelle mit fork() zwei Prozesse.
Im Elternprozess, kann der User durch eine bestimmte Eingabe
den Kindprozess via Signal SIGKILL beenden.
Nun muss ich den beendeten Kindprozess aber wieder (mit neuen Variablen-Werten) starten (dazu verwende ich die Funktion setjmp und longjmp (ist ähnlich goto).
Um den beendeten Kindprozess zu starten muss ich doch aber auch den Elternprozess neustarten.
Und dabei wird jedesmal ein Zombie kreiert! Da der Elternprozess ja noch nicht beendet wurde.
Hab schon einiges nun probiert, aber nix hat hingehauen!
Im Elternprozess, kann der User durch eine bestimmte Eingabe
den Kindprozess via Signal SIGKILL beenden.
Nun muss ich den beendeten Kindprozess aber wieder (mit neuen Variablen-Werten) starten (dazu verwende ich die Funktion setjmp und longjmp (ist ähnlich goto).
Um den beendeten Kindprozess zu starten muss ich doch aber auch den Elternprozess neustarten.
Und dabei wird jedesmal ein Zombie kreiert! Da der Elternprozess ja noch nicht beendet wurde.
Hab schon einiges nun probiert, aber nix hat hingehauen!