Lunedì 08/03/04 ore 11-13 (lezione)
Sincronizzazione mediante SEGNALI: definizione di segnale e trattamento segnale. Elenco (parziale)
segnali. Primi esempi di segnali semplici: SIGINT (CTRL-C), SIGILL, SIGTERM e SIGKILL.
Primitive SIGNAL/SIGSET: definizione di un HANDLER, default e possibità di ignorare un segnale.
Differenze di gestione fra versione BSD (SIGSET) e System V (SIGNAL). Comportamento in
seguito a fork e/o exec. Esempi di uso di segnali: trattamento CTRL-C (varie versioni). Primitiva
KILL: esempio (varie versioni). Altre primitive: pause ed alarm: esempio.
File relativi alla pagina: pagina.
Ripreso esempio calcolo lunghezza pipe: trattamento
mediante SIGALRM (allarme).
Ripreso esempio di pipe
senza lettore: trattamento segnale SIGPIPE.
Mercoledì 10/03/04 ore 11-13 (esercitazione)
SHELL UNIX E PROCESSI C - USO DI SEGNALI: soluzioni degli esercizi 2 (parte
shell e parte C) dei compiti d'esame SOVOD del 17 febbraio 1999, 9 novembre 2001 e
10 Gennaio 2001 (solo parte C, per mostrare le differenze della versione
risolta con segnali rispetto a quella già mostrata che usava invece le
pipe).
Venerdì 12/03/04 dalle ore 11 (Seconda Prova in Itinere)
Prova in Itinere sulla seconda parte dell'esercizio di esame: programma concorrente usando il linguaggio C/UNIX.