Re: ssh und maximale Laufzeit definieren

Autor: Michael Lestinsky <michael_at_lestinsky.de>
Datum: Tue, 28 Oct 2008 10:48:28 -0400
Hallo Alex,

(wir haben das zwar im IRC bereits halbwegs angesprochen, aber ich moechte
nicht, dass im Mailarchiv Unsinn unwidersprochen stehen bleibt. ;-))

> >void sighandler (int sig) {
> ...
> >}
> >
> >int main () {
> ...
> >        signal(SIGALRM, sighandler);    // Signalhandler registrieren
> ...
> >    return 0;
> >}
> 
> Dein Signal-Handler "frisst" das Signal, damit wait es mitbekommt, musst 
> du den default-handler (bzw. den vorherigen) im signalhandler aufrufen. 
> Den bekommst du von signal zurückgeliefert.

Das ist nicht der Grund, warum das wait() auf ein Signal hin nicht
abbricht. Es wäre nach meinem Gefühl auch irgendwie ein Bruch der Trennung
zwischen Kernelcode und Usercode, wenn ein Signalhandler solche Seiten-
effekte auf andere Systemcalls hätte.
Ich verstehe es bis heute noch nicht so recht und habe auch im
FBSD Kernelcode herumgestochert. Was da eigentlich passiert ist mir
nachwievor schleierhaft.

Man kann sich natürlich darauf einigen, dass Signale Teufelszeug sind. ;-)

Bye,
Michael

--
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: http://wiki.uugrn.org/wiki/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/
Empfangen am 28.10.2008

Dieses Archiv wurde generiert von hypermail 2.2.0 : 28.10.2008 CET