%% intro.tex
%%
-%% Copyright (C) 2000-2011 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2012 Simone Piccardi. Permission is granted to
%% copy, distribute and/or modify this document under the terms of the GNU Free
%% Documentation License, Version 1.1 or any later version published by the
%% Free Software Foundation; with the Invariant Sections being "Un preambolo",
\textit{system call} relative alle operazioni di I/O, e gestisce poi
l'organizzazione di dette operazioni nei vari modi in cui i diversi filesystem
le effettuano, permettendo la coesistenza di filesystem differenti all'interno
-dello stesso albero delle directory. Torneremo su questa interfaccia generica
-fornita dal VFS in sez.~\ref{sec:file_vfs_work}.
+dello stesso albero delle directory. Approfondiremo il funzionamento di
+interfaccia generica fornita dal VFS in sez.~\ref{sec:file_vfs_work}.
In sostanza quello che accade è che quando un processo esegue una
\textit{system call} che opera su un file, il kernel chiama sempre una
-funzione implementata nel VFS; la funzione eseguirà le manipolazioni sulle
+funzione implementata nel VFS. La funzione eseguirà le manipolazioni sulle
strutture generiche e utilizzerà poi la chiamata alle opportune funzioni del
filesystem specifico a cui si fa riferimento. Saranno queste a chiamare le
funzioni di più basso livello che eseguono le operazioni di I/O sul
sez.~\ref{sec:file_chroot}) è la stessa per tutti i processi ed equivale alla
directory radice dell'albero dei file; in questo caso si parla di un
\textsl{pathname assoluto} \itindsub{pathname}{assoluto}. Altrimenti la
-ricerca parte dalla directory di lavoro corrente del processo (su cui
-torneremo in sez.~\ref{sec:file_work_dir}) ed il \textit{pathname} è detto
-\itindsub{pathname}{relativo} \textsl{pathname relativo}.
+ricerca parte dalla \index{directory~di~lavoro} directory di lavoro corrente
+del processo (su cui torneremo in sez.~\ref{sec:file_work_dir}) ed il
+\textit{pathname} è detto \itindsub{pathname}{relativo} \textsl{pathname
+ relativo}.
Infine i nomi di directory ``\file{.}'' e ``\file{..}'' hanno un significato
speciale e vengono inseriti in ogni directory quando questa viene creata (vedi
dispositivi. L'accesso viene gestito attraverso i \textit{file descriptor} che
sono rappresentati da numeri interi (cioè semplici variabili di tipo
\ctyp{int}). L'interfaccia è definita nell'\textit{header file}
-\file{unistd.h} e la tratteremo in dettaglio in
+\headfile{unistd.h} e la tratteremo in dettaglio in
cap.~\ref{cha:file_unix_interface}.
\itindbeg{file~stream}
Unix. Gli \textit{stream} sono oggetti complessi e sono rappresentati da
puntatori ad un opportuna struttura definita dalle librerie del C, ad essi si
accede sempre in maniera indiretta utilizzando il tipo \code{FILE *}.
-L'interfaccia è definita nell'\textit{header file} \file{stdio.h} e la
+L'interfaccia è definita nell'\textit{header file} \headfile{stdio.h} e la
tratteremo in dettaglio nel cap.~\ref{cha:files_std_interface}.
Entrambe le interfacce possono essere usate per l'accesso ai file come agli
sez.~\ref{sec:proc_access_id}).\\
\hline
\end{tabular}
- \caption{Elenco dei tipi primitivi, definiti in \file{sys/types.h}.}
+ \caption{Elenco dei tipi primitivi, definiti in \headfile{sys/types.h}.}
\label{tab:intro_primitive_types}
\end{table}
riferimento ai tipi elementari dello standard del linguaggio C, ma ad una
serie di \index{tipo!primitivo} \textsl{tipi primitivi} del sistema, riportati
in tab.~\ref{tab:intro_primitive_types}, e definiti nell'\textit{header file}
-\file{sys/types.h}, in modo da mantenere completamente indipendenti i tipi
+\headfile{sys/types.h}, in modo da mantenere completamente indipendenti i tipi
utilizzati dalle funzioni di sistema dai tipi elementari supportati dal
compilatore C.