X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=blobdiff_plain;f=process.tex;h=dafdef803099fa791a30d9c35055588980bbc376;hb=43c4caa7e3d1c681d26f4381ec19f41325786ea1;hp=dae486ffe1efc64812c09dd5dec1c863c094ed2e;hpb=ae7699cee1a9b906265387f78a08bc64da553b01;p=gapil.git diff --git a/process.tex b/process.tex index dae486f..dafdef8 100644 --- a/process.tex +++ b/process.tex @@ -116,7 +116,7 @@ Infine occorre distinguere fra lo stato di uscita di un programma possibile un processo possa essere terminato (da un segnale) prima che il programma in esecuzione si sia concluso. In caso di conclusione normale del programma però lo stato di uscita diventa parte dello stato di conclusione del -processo (vedi \secref{sec:prochand_xxx}). +processo (vedi \secref{sec:proc_xxx}). \subsection{Le funzioni \texttt{exit} e \texttt{\_exit}} @@ -137,7 +137,7 @@ che usa le librerie standard del C; essa esegue tutte le funzioni che sono state registrate con \texttt{atexit} e \texttt{on\_exit} (vedi \secref{sec:proc_atexit}), e chiude tutti gli stream di I/O effettuando il salvataggio dei dati sospesi (chiamando \texttt{fclose}, vedi -\secref{sec:filestd_close}), infine ripassa il controllo al kernel chiamando +\secref{sec:file_fclose}), infine ripassa il controllo al kernel chiamando \texttt{\_exit} e passando il valore \texttt{status} come stato di uscita. La system call \texttt{\_exit} restituisce direttamente il controllo al @@ -157,7 +157,7 @@ stream), fa si che ogni figlio del processo sia ereditato da \texttt{init} (vedi \secref{cha:process_handling}), manda un segnale \texttt{SIGCHLD} al processo padre (vedi \ref{sec:sig_job_control}) ed infine ritorna lo stato di uscita specificato in \texttt{status} che può essere raccolto usando la -funzione \texttt{wait} (vedi \secref{sec:prochand_wait}). +funzione \texttt{wait} (vedi \secref{sec:proc_wait}). \subsection{Le funzioni \texttt{atexit} e \texttt{on\_exit}} @@ -220,7 +220,7 @@ Data l'importanza dell'argomento in un sistema unix l'unico modo in cui un programma può essere eseguito dal kernel è attraverso la chiamata alla system call \texttt{execve} (in genere attraverso una delle funzioni \texttt{exec} che vedremo in -\secref{sec:prochand_exec}). +\secref{sec:proc_exec}). Allo stesso modo l'unico modo in cui un programma può concludere volontariamente la sua esecuzione è attraverso una chiamata alla system call