X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileunix.tex;h=2e22dabbd05f706671f57feeda87c6f8c44ae890;hp=f0534ed9ba21ae5c311e2bd42a521eff401a29db;hb=b2fde72b2f308cb35873f1fd050501af6a742bc0;hpb=6ca77550fb420b3948b95a60ff79f7e282c12d34 diff --git a/fileunix.tex b/fileunix.tex index f0534ed..2e22dab 100644 --- a/fileunix.tex +++ b/fileunix.tex @@ -381,9 +381,10 @@ ritorno il file descriptor con il valore pi anche in FreeBSD, senza limiti di allineamento dei buffer. In Linux è stata introdotta con il kernel 2.4.10, le versioni precedenti la ignorano.} -\footnotetext[7]{introdotto con il kernel 2.6.23, per evitare una \textit{race - condition} che si può verificare con i thread, fra l'apertura del file e - l'impostazione della suddetta modalità con \func{fcntl}.} +\footnotetext[7]{introdotto con il kernel 2.6.23, per evitare una + \itindex{race~condition} \textit{race condition} che si può verificare con i + \itindex{thread} \textit{thread}, fra l'apertura del file e l'impostazione + della suddetta modalità con \func{fcntl}.} Questa caratteristica permette di prevedere qual è il valore del file descriptor che si otterrà al ritorno di \func{open}, e viene talvolta usata da @@ -1072,9 +1073,10 @@ parallelo alla chiamata a \func{open}, e questo lascia aperta la possibilit di una \itindex{race~condition} \textit{race condition}. Inoltre come già accennato, la directory di lavoro corrente è una proprietà -del singolo processo; questo significa che quando si lavora con i thread essa -sarà la stessa per tutti, ma esistono molti casi in cui sarebbe invece utile -che ogni singolo thread avesse la sua directory di lavoro. +del singolo processo; questo significa che quando si lavora con i +\itindex{thread} \textit{thread} essa sarà la stessa per tutti, ma esistono +molti casi in cui sarebbe invece utile che ogni singolo \itindex{thread} +\textit{thread} avesse la sua directory di lavoro. Per risolvere questi problemi, riprendendo una interfaccia già presente in Solaris, a fianco delle normali funzioni che operano sui file (come @@ -1097,13 +1099,13 @@ stesso. L'idea è che si apra prima la directory che si vuole usare come base dei pathname relativo, e si passi il file descriptor alla funzione che userà quella directory come punto di partenza per la risoluzione.\footnote{in questo - modo, anche quando si lavora con i thread, si può mantenere anche una - directory di lavoro diversa per ciascuno di essi.} Con queste funzioni si -possono anche ottenere grossi aumenti di prestazioni quando si devono eseguire -operazioni su delle sezioni di albero dei file che prevedono gerarchie molto -profonde e grandi quantità di file e directory, dato che basta eseguire la -risoluzione di un pathname una sola volta (nell'apertura della directory) e -non per ciascun file che essa contiene. + modo, anche quando si lavora con i \itindex{thread} \textit{thread}, si può + mantenere anche una directory di lavoro diversa per ciascuno di essi.} Con +queste funzioni si possono anche ottenere grossi aumenti di prestazioni quando +si devono eseguire operazioni su delle sezioni di albero dei file che +prevedono gerarchie molto profonde e grandi quantità di file e directory, dato +che basta eseguire la risoluzione di un pathname una sola volta (nell'apertura +della directory) e non per ciascun file che essa contiene. La sintassi generale di queste nuove funzioni è che esse prendano come primo argomento il file descriptor della directory da usare come base, mentre gli