X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileintro.tex;h=6181d4d8bd6bc1ee42779b69b12b5df5b55a2b8b;hp=bc11f826886a4d1a7938128af89266d8e0005a69;hb=0196c376e39fc18f8cd5e7fef47b61264f943faf;hpb=70860564e1de946ab8d681bb41c601ba77721709 diff --git a/fileintro.tex b/fileintro.tex index bc11f82..6181d4d 100644 --- a/fileintro.tex +++ b/fileintro.tex @@ -1,6 +1,6 @@ %% fileintro.tex %% -%% Copyright (C) 2000-2007 Simone Piccardi. Permission is granted to +%% Copyright (C) 2000-2008 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 "Prefazione", @@ -91,7 +91,7 @@ oggetto del filesystem, compresa un'altra directory, si ottiene naturalmente un'organizzazione ad albero inserendo nomi di directory in altre directory. Un file può essere indicato rispetto alla directory corrente semplicemente -specificandone il nome\footnote{Il manuale delle \acr{glibc} chiama i nomi +specificandone il nome\footnote{il manuale delle \acr{glibc} chiama i nomi contenuti nelle directory \textsl{componenti} (in inglese \textit{file name components}), noi li chiameremo più semplicemente \textsl{nomi} o \textsl{voci}.} da essa contenuto. All'interno dello stesso albero si @@ -118,16 +118,15 @@ torneremo in sez.~\ref{sec:file_chroot}) 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 corrente (su cui torneremo in -sez.~\ref{sec:file_work_dir}) ed il pathname è detto \textsl{pathname - relativo} \itindsub{pathname}{relativo}. +sez.~\ref{sec:file_work_dir}) ed il pathname è detto +\itindsub{pathname}{relativo} \textsl{pathname relativo}. -I nomi \file{.} e \file{..} hanno un significato speciale e vengono inseriti -in ogni directory: il primo fa riferimento alla directory corrente e il -secondo alla directory \textsl{genitrice} (o \textit{parent directory}) cioè -la directory che contiene il riferimento alla directory corrente; nel caso la -directory corrente coincida con la directory radice, allora il riferimento è a -se stessa. -\itindend{pathname} +I nomi ``\file{.}'' e ``\file{..}'' hanno un significato speciale e vengono +inseriti in ogni directory: il primo fa riferimento alla directory corrente e +il secondo alla directory \textsl{genitrice} (o \textit{parent directory}) +cioè la directory che contiene il riferimento alla directory corrente; nel +caso la directory corrente coincida con la directory radice, allora il +riferimento è a se stessa. \itindend{pathname} \subsection{I tipi di file} @@ -168,22 +167,22 @@ dispositivo sottostante effettua le operazioni di I/O.\footnote{in sostanza i \hline \hline \textit{regular file} & \textsl{file regolare} & - un file che contiene dei dati (l'accezione normale di file) \\ + Un file che contiene dei dati (l'accezione normale di file).\\ \textit{directory} & \textsl{cartella o direttorio} & - un file che contiene una lista di nomi associati a degli - \index{inode} \textit{inode} (vedi sez.~\ref{sec:file_vfs}). \\ + Un file che contiene una lista di nomi associati a degli + \index{inode} \textit{inode} (vedi sez.~\ref{sec:file_vfs}).\\ \textit{symbolic link} & \textsl{collegamento simbolico} & - un file che contiene un riferimento ad un altro file/directory \\ + Un file che contiene un riferimento ad un altro file/directory.\\ \textit{char device} & \textsl{dispositivo a caratteri} & - un file che identifica una periferica ad accesso a caratteri \\ + Un file che identifica una periferica ad accesso a caratteri.\\ \textit{block device} & \textsl{dispositivo a blocchi} & - un file che identifica una periferica ad accesso a blocchi \\ + Un file che identifica una periferica ad accesso a blocchi.\\ \textit{fifo} & ``\textsl{coda}'' & - un file speciale che identifica una linea di comunicazione software + Un file speciale che identifica una linea di comunicazione software unidirezionale (vedi sez.~\ref{sec:ipc_named_pipe}).\\ \textit{socket} & ``\textsl{presa}''& - un file speciale che identifica una linea di comunicazione software - bidirezionale (vedi cap.~\ref{cha:socket_intro}) \\ + Un file speciale che identifica una linea di comunicazione software + bidirezionale (vedi cap.~\ref{cha:socket_intro}).\\ \hline \end{tabular} \caption{Tipologia dei file definiti nel VFS} @@ -447,25 +446,25 @@ tab.~\ref{tab:file_file_operations}. \textbf{Funzione} & \textbf{Operazione} \\ \hline \hline - \textsl{\code{open}} & apre il file (vedi sez.~\ref{sec:file_open}). \\ - \textsl{\code{read}} & legge dal file (vedi sez.~\ref{sec:file_read}).\\ - \textsl{\code{write}} & scrive sul file (vedi + \textsl{\code{open}} & Apre il file (vedi sez.~\ref{sec:file_open}).\\ + \textsl{\code{read}} & Legge dal file (vedi sez.~\ref{sec:file_read}).\\ + \textsl{\code{write}} & Scrive sul file (vedi sez.~\ref{sec:file_write}).\\ - \textsl{\code{llseek}} & sposta la posizione corrente sul file (vedi - sez.~\ref{sec:file_lseek}). \\ - \textsl{\code{ioctl}} & accede alle operazioni di controllo + \textsl{\code{llseek}} & Sposta la posizione corrente sul file (vedi + sez.~\ref{sec:file_lseek}).\\ + \textsl{\code{ioctl}} & Accede alle operazioni di controllo (vedi sez.~\ref{sec:file_ioctl}).\\ - \textsl{\code{readdir}}& legge il contenuto di una directory \\ - \textsl{\code{poll}} & usata nell'I/O multiplexing (vedi - sez.~\ref{sec:file_multiplexing}). \\ - \textsl{\code{mmap}} & mappa il file in memoria (vedi - sez.~\ref{sec:file_memory_map}). \\ - \textsl{\code{release}}& chiamata quando l'ultimo riferimento a un file - aperto è chiuso. \\ - \textsl{\code{fsync}} & sincronizza il contenuto del file (vedi - sez.~\ref{sec:file_sync}). \\ - \textsl{\code{fasync}} & abilita l'I/O asincrono (vedi - sez.~\ref{sec:file_asyncronous_io}) sul file. \\ + \textsl{\code{readdir}}& Legge il contenuto di una directory.\\ + \textsl{\code{poll}} & Usata nell'I/O multiplexing (vedi + sez.~\ref{sec:file_multiplexing}).\\ + \textsl{\code{mmap}} & Mappa il file in memoria (vedi + sez.~\ref{sec:file_memory_map}).\\ + \textsl{\code{release}}& Chiamata quando l'ultimo riferimento a un file + aperto è chiuso.\\ + \textsl{\code{fsync}} & Sincronizza il contenuto del file (vedi + sez.~\ref{sec:file_sync}).\\ + \textsl{\code{fasync}} & Abilita l'I/O asincrono (vedi + sez.~\ref{sec:file_asyncronous_io}) sul file.\\ \hline \end{tabular} \caption{Operazioni sui file definite nel VFS.} @@ -589,11 +588,11 @@ di \index{inode} inode. La nuova directory avrà allora un numero di riferimenti pari a due, in quanto è referenziata dalla directory da cui si era partiti (in cui è inserita la -nuova voce che fa riferimento a \file{img}) e dalla voce \file{.} -che è sempre inserita in ogni directory; questo vale sempre per ogni directory -che non contenga a sua volta altre directory. Al contempo, la directory da -cui si era partiti avrà un numero di riferimenti di almeno tre, in quanto -adesso sarà referenziata anche dalla voce \file{..} di \file{img}. +nuova voce che fa riferimento a \texttt{img}) e dalla voce ``\texttt{.}'' che +è sempre inserita in ogni directory; questo vale sempre per ogni directory che +non contenga a sua volta altre directory. Al contempo, la directory da cui si +era partiti avrà un numero di riferimenti di almeno tre, in quanto adesso sarà +referenziata anche dalla voce ``\texttt{..}'' di \texttt{img}. \subsection{Il filesystem \textsl{ext2}}