Processi, Thread e procfs
Nell'esercitazione del 26/10, abbiamo visto in pratica come creare, distruggere e interagire con processi e thread. In particolare, abbiamo visto:
- Creazione di nuovi processi (
fork
) - Sostituzione del programma in esecuzione con uno diverso (
execve
e sue varianti) - Attesa per la terminazione del processo figlio (
wait
) - Uso dei segnali, in particolare SIGCHLD e SIGUSR1/SIGUSR2, e l'installazione dei gestori (handler) attraverso la funzione
sigaction
- Creazione e gestione dei thread POSIX (
pthread_create
,pthread_join
,pthread_setdetachstate
, etc.) - Definizione e uso di mutex e condition variable nei thread POSIX
- Definizione e uso di risorse private nei thread POSIX