From: Simone Piccardi Date: Tue, 13 Nov 2001 19:01:18 +0000 (+0000) Subject: Si va avanti con fcntl X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=commitdiff_plain;h=34de043a9b57bd1e069ba672d96ca15b3892c12d;hp=4f6d6cb9e5228bfa2341e052acbf23c3d78b2780 Si va avanti con fcntl --- diff --git a/fileunix.tex b/fileunix.tex index 06efeda..a0d1def 100644 --- a/fileunix.tex +++ b/fileunix.tex @@ -205,8 +205,8 @@ prototipo La funzione apre il file, usando il primo file descriptor libero, e crea l'opportuna voce (cioè la struttura \var{file}) nella file table. Viene usato -sempre il file descriptor con il valore più basso, questa caratteristica -permette di prevedere qual'è il valore che si otterrà e viene talvolta usata +sempre il file descriptor con il valore più basso. Questa caratteristica +permette di prevedere qual'è il valore che si otterrà, e viene talvolta usata da alcune applicazioni per sostituire i file corrispondenti ai file standard di \secref{sec:file_std_descr}: se ad esempio si chiude lo standard input e si apre subito dopo un nuovo file questo diventerà il nuovo standard input (avrà @@ -882,12 +882,26 @@ un esempio, una lista dei possibili valori \macro{EINVAL} se \param{arg} è negativo o maggiore del massimo consentito o \macro{EMFILE} se il processo ha già raggiunto il massimo numero di descrittori consentito. -\item[\macro{F\_GETFD}] ritorna il valore dei \textit{file descriptor flag} di - \var{fd}, al momento è definito solo \macro{FD\_CLOEXEC}. Prova prov proep -\item[\macro{F\_SETFD}] setta il valore dei \textit{file descriptor flag} - specificato da \param{arg}. +\item[\macro{F\_SETFD}] setta il valore del \textit{file descriptor flag} + al valore specificato con\param{arg}. Al momento l'unico bit usato è + quello di \textit{close on exec}, identificato dalla costante + \macro{FD\_CLOEXEC}. +\item[\macro{F\_GETFD}] ritorna il valore del \textit{file descriptor flag} di + \var{fd}, se \macro{FD\_CLOEXEC} è settato i file descriptor aperti vengono + chiusi attraverso una \func{exec} altrimenti (il default) restano aperti. +\item[\macro{F\_GETFL}] ritorna il valore del \textit{file status flag}, + permette cioè di rileggere quei bit settati da \func{open} all'apertura del + file che vengono memorizzati (quelli riportati nella prima e terza sezione + di \tabref{tab:file_open_flags}). +\item[\macro{F\_SETFL}] setta il \textit{file status flag} al valore + specificato da \param{arg}, possono essere settati solo i bit riportati + nella terza sezione di \tabref{tab:file_open_flags} (da verificare). \end{basedescript} \subsection{La funzione \func{ioctl}} \label{sec:file_ioctl} + + + +