Completata prima parte della bufferizzazione
[gapil.git] / prochand.tex
index f5decd7429d5e028e978b0980fef1d5961f26f57..2707d0953adbed3af5c76549c856cc84564ff92a 100644 (file)
@@ -196,7 +196,7 @@ ottenuti da programma usando le funzioni:
 
 Entrambe le funzioni non riportano condizioni di errore. 
 \end{functions}
-esempi dell'uso di queste funzioni sono riportati in
+\noindent esempi dell'uso di queste funzioni sono riportati in
 \figref{fig:proc_fork_code}, nel programma di esempio \file{ForkTest.c}.
 
 Il fatto che il \acr{pid} sia un numero univoco per il sistema lo rende il
@@ -1135,7 +1135,7 @@ indicato dal parametro \var{path}, che viene interpretato come il
 
 \begin{figure}[htb]
   \centering
-  \includegraphics[width=13cm]{img/exec_rel.eps}
+  \includegraphics[width=13cm]{img/exec_rel}
   \caption{La interrelazione fra le sei funzioni della famiglia \func{exec}}
   \label{fig:proc_exec_relat}
 \end{figure}
@@ -1331,8 +1331,7 @@ possono essere letti dal processo attraverso delle opportune funzioni, i cui
 prototipi sono i seguenti:
 \begin{functions}
   \headdecl{unistd.h}
-  \headdecl{sys/types.h}
-  
+  \headdecl{sys/types.h}  
   \funcdecl{uid\_t getuid(void)} restituisce il \textit{real user ID} del
   processo corrente.
 
@@ -1345,7 +1344,7 @@ prototipi sono i seguenti:
   \funcdecl{gid\_t getegid(void)} restituisce l'\textit{effective group ID} del
   processo corrente.
   
-  Queste funzioni non riportano condizioni di errore. 
+  \noindent Queste funzioni non riportano condizioni di errore. 
 \end{functions}
 
 In generale l'uso di privilegi superiori deve essere limitato il più
@@ -1690,11 +1689,11 @@ non possono essere interrotte (o subire interferenze pericolose) da altri
 processi.
 
 Nel caso dei segnali invece la situazione è molto più delicata, in quanto lo
-stesso processo può essere interrotto in qualunque momento, e le operazioni di
-un eventuale \textit{signal handler} saranno compiute nello stesso spazio di
-indirizzi. Per questo anche solo il solo accesso o l'assegnazione di una
-variabile possono non essere più operazioni atomiche (torneremo su questi
-aspetti in \secref{sec:sign_xxx}).
+stesso processo, e pure alcune system call, possono essere interrotti in
+qualunque momento, e le operazioni di un eventuale \textit{signal handler}
+sono compiute nello stesso spazio di indirizzi del processo. Per questo anche
+solo il solo accesso o l'assegnazione di una variabile possono non essere più
+operazioni atomiche (torneremo su questi aspetti in \secref{sec:sign_xxx}).
 
 In questo caso il sistema provvede un tipo di dato, il \type{sig\_atomic\_t},
 il cui accesso è assicurato essere atomico.  In pratica comunque si può
@@ -1728,9 +1727,9 @@ condivise siano opportunamente protette da meccanismi di sincronizzazione
 Un caso particolare di \textit{race condition} sono poi i cosiddetti
 \textit{deadlock}; l'esempio tipico è quello di un flag di ``occupazione'' che
 viene rilasciato da un evento asincrono fra il controllo (in cui viene trovato
-occupato) e la successiva messa in attesa, attesa che a questo punto diventerà
+occupato) e la successiva messa in attesa, che a questo punto diventerà
 perpetua (da cui il nome di \textit{deadlock}) in quanto l'evento di sblocco
-di questa è stato perso.
+del flag è stato perso fra il controllo e la messa in attesa.
 
 
 \subsection{Le funzioni rientranti}