-negativo, chiamato appunto \textit{file descriptors}; all'interno della
-struttura (\var{task\_struct}) che identifica il processo nei confronti del
-kernel ogni processo mantiene una sezione (la \var{file_struct}, la cui
-struttura è riportata in \nfig)
+negativo, chiamato appunto \textit{file descriptors}, quando un file viene
+aperto la funzione restituisce il file descriptor, e tutte le successive
+operazioni devono passare il \textit{file descriptors} come argomento.
+
+Per capire come funziona il meccanismo occorre spiegare a grandi linee come è
+che il kernel gestisce l'interazione fra processi e file. Il kernel mantiene
+sempre un elenco dei processi attivi nella cosiddetta \textit{process table}
+ed un elenco dei file aperti nella \textit{file table}.
+
+La \textit{process table} è una tabella che contiene una voce per ciascun
+processo attivo nel sistema. In Linux la tabella è costituita da strutture di
+tipo \var{task\_struct} nelle quali sono raccolte tutte le informazioni
+relative ad un singolo processo; fra queste informazioni c'è anche il
+puntatore ad una ulteriore struttura di tipo \var{files\_struct} in cui sono
+contenute le informazioni relative ai file che il processo ha aperto, ed in
+particolare:
+\begin{itemize}
+\item i flag relativi ai file descriptor.
+\item il numero di file aperti.
+\item una tabella che contiene un puntatore alla relativa voce nella
+ \textit{file table} per ogni file aperto.
+\end{itemize}
+il \textit{file descriptor} in sostanza è l'intero positivo che indicizza
+questa tabella.