Aggiunta poca roba
authorSimone Piccardi <piccardi@gnulinux.it>
Sat, 8 Sep 2001 21:56:45 +0000 (21:56 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Sat, 8 Sep 2001 21:56:45 +0000 (21:56 +0000)
prochand.tex

index b9cd6a7f653a70b2f819d52574d5e45983fcbb74..59eb4042a70957ff77e3324727dbccd860733f8b 100644 (file)
@@ -208,12 +208,24 @@ ritorno della funzione fork 
 figlio è zero; in questo modo il programma può identificare se viene eseguito
 dal padre o dal figlio.
 
-Si noti come la funzione, caso unico che ne contraddistingue l'importanza,
-ritorni \textbf{due} volte. Nel caso del padre viene restituito il \acr{pid}
-del figlio in quanto potendo esservi più figli questo è il modo per poterne
-tracciare la creazione, il figlio invece ha un unico padre (il cui \acr{pid}
-può essere ottenuto con \func{getppid}, vista in \secref{sec:proc_pid}) e si
-usa il valore nullo (che non può essere il \acr{pid} di nessun processo)
+Si noti come la funzione \fucn{fork} ritorni \textbf{due} volte: nel padre e
+nel figlio. La sola differenza che si ha nei due processi è il valore di
+ritorno restituito dalla funzione, che nel padre è il \acr{pid} del figlio
+mentre nel figlio è zero; in questo modo il programma può identificare se
+viene eseguito dal padre o dal figlio. La scelta di questi valori comunque non
+è casuale, un processo infatti può avere più figli, ed il valore di ritorno di
+\func{fork} è l'unico modo che permette di idenficare quello appena creato; al
+contrario un figlio ha sempre un solo padre (il cui \acr{pid} può sempre
+essere ottenuto con \func{getppid}, vista in \secref{sec:proc_pid}) e si usa
+il valore nullo, che non può essere il \acr{pid} di nessun processo.
+
+In generale non si può dire se il quale fra il padre ed il figlio venga
+eseguito per primo\footnote{anche se nel kernel 2.4.x è stato introdotto un
+  meccanismo che metteva in esecuzione sempre il xxx per primo (TODO
+  recuperare le informazioni esatte)}, per cui se i due processi devono essere
+sincronizzati occorre ricorrere ad un qualche meccanismo di
+intercomunicazione.
+