-anche poter identificare chi ha lanciato un certo processo, che pertanto è
-associato anch'esso ad un utente e a un gruppo. Un semplice controllo di una
-corrispondenza fra identificativi però non garantisce sufficiente flessibilità
-per tutti quei casi in cui è necessario poter disporre di privilegi diversi, o
-dover impersonare un altro utente per un limitato insieme di operazioni.
-
-Per questo motivo in generale
-
-questo può essere fatto
-in vari modi (ad
-
-Ad ogni processo è associato un certo numero di identificatori, il cui elenco
-è riportato \ntab, in genere questi derivano direttamente dall'utente che ha
-lanciato il processo; in \secref{sec:file_perm_overview} abbiamo visto come
-ogni file appartenga ad un utente e ad un gruppo e che il controllo di accesso
-viene eseguito sulla base di uno di questi identificatori, l'\textit{effective uid}
-
-, e vengono
-usati sia per il controllo di accesso ai file che per la gestione dei
-privilegi associati ai processi stessi.
-
-In \secref{sec:file_perm_overview} abbiamo visto come ogni file appartenga ad
-un utente e ad un gruppo, e che il controllo di accesso viene eseguito sulla
-base del
-
+anche poter identificare chi è che ha lanciato un certo processo, e pertanto
+anche a ciascuno di essi è associato un utente e a un gruppo.
+
+Un semplice controllo di una corrispondenza fra identificativi però non
+garantisce però sufficiente flessibilità per tutti quei casi in cui è
+necessario poter disporre di privilegi diversi, o dover impersonare un altro
+utente per un limitato insieme di operazioni. Per questo motivo in generale
+tutti gli unix prevedono che i processi abbiano almeno due gruppi di
+identificatori, chiamati rispettivamente \textit{real} ed \textit{effective}.
+
+Al primo gruppo appartengono il \textit{real user ID} e il \textit{real group
+ ID}: questi vengono settati al login ai valori corrispondenti all'utente con
+cui si accede al sistema (e relativo gruppo di default). Servono per
+l'identificazione dell'utente e normalmente non vengono mai cambiati.
+
+Al secondo gruppo appartengono l'\textit{effective user ID} e
+l'\textit{effective group ID}: questi sono gli identificatori usati nella
+verifiche dei permessi, (ad esempio, come vedremo in
+\secref{sec:file_perm_overview}, vengono usati nel controllo di accesso ai
+file).
+
+Questi identificatori normalmente sono identici ai corrispondenti del gruppo
+\textsl{reale} tranne nel caso in cui, come visto in \secref{sec:proc_exec}, il
+programma che si è posto in esecuzione abbia i bit \acr{suid} o \acr{sgid}
+settati (il significato di questi bit è affrontato in dettaglio in
+\secref{sec:file_suid_sgid}). In questo caso essi saranno settati all'utente e
+al gruppo proprietari del file, questo consente, per programmi in cui ci sia
+necessità, di dare anche all'utente normale privilegi o permessi superiori.
+
+Come nel caso del \acr{pid} e del \acr{ppid} identificatori possono essere
+letti dal processo attraverso delle opportune funzioni, i cui prototipi sono i
+seguenti: