INTRODUZIONE ALLA PROGRAMMAZIONE IN C



Interruzioni e segnali



In questa sezione verranno affrontati i modi in cui due processi possono comunicare fra di loro. Quando un processo termina in modo anormale, solitamente prova ad inviare un segnale che indichi cosa e' andato a monte. I programmi C (e UNIX) sono in grado di catturare questi segnali ed utilizzarli come diagnostica. Anche le comunicazioni specificate dall'utente possono aver luogo in questo modo. I processi utilizzano dei segnali, che possono essere numerati da 0 a 31. Le macro sono definite nel file header signal.h per quanto riguarda i segnali piu' comuni. Queste includono: SIGHUP 1 /* hangup */ SIGINT 2 /* interrupt */ SIGQUIT 3 /* quit */ SIGILL 4 /* illegal instruction */ SIGABRT 6 /* used by abort */ SIGKILL 9 /* hard kill */ SIGALRM 14 /* alarm clock */ SIGCONT 19 /* continue a stopped process */ SIGCHLD 20 /* to parent on child stop or exit */