X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=filedir.tex;h=c389a7de87d5ac351a71c5d31fb5cb79e8b9c501;hp=f7ce34067ad456b55f0d582acdb8b57323f15c9c;hb=81ff87c3e2a6ecd3e33867798cba0d27576f44d0;hpb=01e363536700694f191264cf2c2955b31116d1e3 diff --git a/filedir.tex b/filedir.tex index f7ce340..c389a7d 100644 --- a/filedir.tex +++ b/filedir.tex @@ -13,6 +13,7 @@ dei file \section{La gestione di file e directory} +\label{sec:file_dir} Come già accennato in \secref{sec:file_filesystem} in un sistema unix-like la gestione dei file ha delle caratteristiche specifiche che derivano @@ -507,8 +508,8 @@ nuovi file nella directory. Finora abbiamo parlato esclusivamente di file, directory e link simbolici; in \secref{sec:file_file_types} abbiamo visto però che il sistema prevede pure -degli altri tipi di file, come i file di dispositivo e le fifo (i socket sono -un caso a parte, che vedremo in \secref{cha:socket_intro}). +degli altri tipi di file speciali, come i file di dispositivo e le fifo (i +socket sono un caso a parte, che vedremo in \capref{cha:socket_intro}). La manipolazione delle caratteristiche di questi file e la loro cancellazione può essere effettuata con le stesse funzioni che operano sui file normali; ma @@ -792,7 +793,8 @@ POSIX definisce la funzione \func{tempfile}, il cui prototipo automaticamente cancellato alla sua chiusura o all'uscita dal programma. Lo standard non specifica in quale directory verrà aperto il file, ma le \acr{glibc} prima tentano con \macro{P\_tmpdir} e poi con \file{/tmp}. Questa -funzione è rientrante e non soffre di problemi di \textit{race condition}. +funzione è rientrante e non soffre di problemi di \textit{race + condition}\index{race condition}. Alcune versioni meno recenti di Unix non supportano queste funzioni; in questo caso si possono usare le vecchie funzioni \func{mktemp} e \func{mkstemp} che @@ -813,12 +815,13 @@ il suo prototipo \end{prototype} \noindent dato che \param{template} deve poter essere modificata dalla funzione non si può usare una stringa costante. Tutte le avvertenze riguardo -alle possibili \textit{race condition} date per \func{tmpnam} continuano a -valere; inoltre in alcune vecchie implementazioni il valore di usato per -sostituire le \code{XXXXXX} viene formato con il \acr{pid} del processo più -una lettera, il che mette a disposizione solo 26 possibilità diverse per il -nome del file, e rende il nome temporaneo facile da indovinare. Per tutti -questi motivi la funzione è deprecata e non dovrebbe mai essere usata. +alle possibili \textit{race condition}\index{race condition} date per +\func{tmpnam} continuano a valere; inoltre in alcune vecchie implementazioni +il valore di usato per sostituire le \code{XXXXXX} viene formato con il +\acr{pid} del processo più una lettera, il che mette a disposizione solo 26 +possibilità diverse per il nome del file, e rende il nome temporaneo facile da +indovinare. Per tutti questi motivi la funzione è deprecata e non dovrebbe mai +essere usata. @@ -864,8 +867,8 @@ In OpenBSD \end{prototype} \noindent la directory è creata con permessi \code{0700} (al solito si veda \capref{cha:file_unix_interface} per i dettagli); dato che la creazione della -directory è sempre esclusiva i precedenti problemi di \textit{race condition} -non si pongono. +directory è sempre esclusiva i precedenti problemi di \textit{race + condition}\index{race condition} non si pongono. \section{La manipolazione delle caratteristiche dei files}