+
+\section{Il controllo dei processi}
+\label{sec:proc_control}
+
+Esamineremo in questa sezione le varie funzioni per il controllo dei processi:
+la loro creazione, la terminazione, l'esecuzione di altri programmi. Prima di
+trattare in dettaglio le singole funzioni,
+
+\subsection{Gli identificatori dei processi}
+\label{sec:proc_id}
+
+Ogni processo viene identificato dal sistema da un numero identificativo
+unico, il \textit{process id} o \acr{pid}. Questo viene assegnato in forma
+progressiva ogni volta che un nuovo processo viene creato, fino ad un limite
+massimo (in genere essendo detto numero memorizzato in un intero a 16 bit si
+arriva a 32767) oltre il quale si riparte dal numero più basso disponibile
+(FIXME: verificare, non sono sicuro). Per questo motivo processo il processo
+di avvio (init) ha sempre il pid uguale a uno.
+
+Ogni processo è identificato univocamente dal sistema per il suo pid;
+quest'ultimo è un tipo di dato standard, il \texttt{pid\_t} che in genere è un
+intero con segno (nel caso di Linux e delle glibc il tipo usato è
+\texttt{int}).
+
+Tutti i processi inoltre portano traccia del pid del genitore, chiamato in
+genere \textit{ppid} (da \textit{Parente Process Id}). Questi identificativi
+possono essere ottenuti da un programma usando le funzioni:
+\begin{functions}
+\headdecl{sys/types.h}
+\headdecl{unistd.h}
+\funcdecl{pid\_t getpid(void)} restituisce il pid del processo corrente.
+\funcdecl{pid\_t getppid(void)} restituisce il pid del padre del processo
+ corrente.
+\end{functions}
+
+
+