Correzioni ortografiche e aggiornamento di alcune voci per l'indice
[gapil.git] / fileadv.tex
index 1932eca21a2f3a4a52260be2589a21ceb1f6e717..3d1c9f85c65c7571f55ff6e9e6587a33622872f8 100644 (file)
@@ -33,7 +33,8 @@ affrontare nelle operazioni di I/O, che 
 devono eseguire operazioni che possono bloccarsi su più file descriptor:
 mentre si è bloccati su uno di essi su di un'altro potrebbero essere presenti
 dei dati; così che nel migliore dei casi si avrebbe una lettura ritardata
-inutilmente, e nel peggiore si potrebbe addirittura arrivare ad un deadlock.
+inutilmente, e nel peggiore si potrebbe addirittura arrivare ad un
+\textit{deadlock}.
 
 Abbiamo già accennato in \secref{sec:file_open} che è possibile prevenire
 questo tipo di comportamento aprendo un file in modalità
@@ -976,7 +977,8 @@ come maschera binaria ottenuta dall'OR di uno o pi
                              riportati sul file. Ne viene fatta una copia
                              privata cui solo il processo chiamante ha
                              accesso.  Le modifiche sono mantenute attraverso
-                             il meccanismo del \textit{copy on write} e
+                             il meccanismo del 
+                             \textit{copy on write}\index{copy on write} e
                              salvate su swap in caso di necessità. Non è
                              specificato se i cambiamenti sul file originale
                              vengano riportati sulla regione
@@ -988,7 +990,8 @@ come maschera binaria ottenuta dall'OR di uno o pi
     \macro{MAP\_EXECUTABLE}& Ignorato. \\
     \macro{MAP\_NORESERVE} & Si usa con \macro{MAP\_PRIVATE}. Non riserva
                              delle pagine di swap ad uso del meccanismo di
-                             \textit{copy on write} per mantenere le
+                             \textit{copy on write}\index{copy on write}
+                             per mantenere le
                              modifiche fatte alla regione mappata, in
                              questo caso dopo una scrittura, se non c'è più
                              memoria disponibile, si ha l'emissione di
@@ -1234,8 +1237,8 @@ sovrapposizioni, e garantire la atomicit
 
 La prima modalità di file locking che è stata implementata nei sistemi
 unix-like è quella che viene usualmente chiamata \textit{advisory
-  locking},\footnote{Stevens in APUE fa riferimento a questo argomento come al
-  \textit{record locking}, dizione utilizzata anche dal manuale delle
+  locking},\footnote{Stevens in \cite{APUE} fa riferimento a questo argomento
+  come al \textit{record locking}, dizione utilizzata anche dal manuale delle
   \acr{glibc}; nelle pagine di manuale si parla di \textit{discretionary file
     lock} per \func{fcntl} e di \textit{advisory locking} per \func{flock},
   mentre questo nome viene usato anche da Stevens per riferirsi al
@@ -1272,7 +1275,7 @@ sono implementati in maniera completamente indipendente nelle due interfacce,
 che pertanto possono coesistere senza interferenze.
 
 Entrambe le interfacce prevedono la stessa procedura di funzionamento: si
-inizia sempre con il richiere l'opportuno \textit{file lock} (un
+inizia sempre con il richiedere l'opportuno \textit{file lock} (un
 \textit{exclusive lock} per una scrittura, uno \textit{shared lock} per una
 lettura) prima di eseguire l'accesso ad un file.  Se il lock viene acquisito
 il processo prosegue l'esecuzione, altrimenti (a meno di non aver richiesto un
@@ -1329,14 +1332,14 @@ costanti riportate in \tabref{tab:file_flock_operation}.
 I primi due valori, \macro{LOCK\_SH} e \macro{LOCK\_EX} permettono di
 richiedere un \textit{file lock}, ed ovviamente devono essere usati in maniera
 alternativa. Se si specifica anche \macro{LOCK\_NB} la funzione non si
-bloccherà qualora il lock non possa essere aqcuisito, ma ritornerà subito con
+bloccherà qualora il lock non possa essere acquisito, ma ritornerà subito con
 un errore di \macro{EWOULDBLOCK}. Per rilasciare un lock si dovrà invece usare
 \macro{LOCK\_NB}.
 
 La semantica del file locking di BSD è diversa da quella del file locking
 POSIX, in particolare per quanto riguarda il comportamento dei lock nei
 confronti delle due funzioni \func{dup} e \func{fork}.  Per capire queste
-differenze occore prima descrivere con maggiore dettaglio come viene
+differenze occorre prima descrivere con maggiore dettaglio come viene
 realizzato il file locking nel kernel.
 
 In \figref{fig:file_flock_struct} si è riportato uno schema essenziale
@@ -1473,7 +1476,7 @@ struct flock {
 
 L'operazione effettivamente svolta dalla funzione è stabilita dal valore
 dall'argomento \param{cmd} che, come già riportato in \secref{sec:file_fcntl},
-specifica l'azione da compiere; i valori relativi al file loking sono tre:
+specifica l'azione da compiere; i valori relativi al file locking sono tre:
 \begin{basedescript}{\desclabelwidth{2.0cm}}
 \item[\macro{F\_GETLK}] verifica se il file lock specificato dalla struttura
   puntata da \param{lock} non è bloccato da qualche altro lock: in caso
@@ -1574,7 +1577,7 @@ allo stesso file (che sia stato ottenuto con una \func{dup} o con una
 che quello che conta è solo il \acr{pid} del processo. Da questo deriva una
 ulteriore sottile differenza di comportamento: dato che alla chiusura di un
 file i lock ad esso associati vengono rimossi, nella semantica POSIX basterà
-chiudere un file descriptor per cancellare tutti i lock realtivi al file cui
+chiudere un file descriptor per cancellare tutti i lock relativi al file cui
 esso faceva riferimento, anche se questi fossero stati creati usando altri
 file descriptor che restano aperti.