X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileadv.tex;h=45a5615e5b633d5e398bc3059de161c8e67a5148;hp=4b20ac4d33faf69b1b3699c4677aca2472b9c2da;hb=0e932d7963332ca87688c3695d7386d45ddcc46a;hpb=ae7bf994013ffbf4f5ef1d5a38a18033593e3e9f diff --git a/fileadv.tex b/fileadv.tex index 4b20ac4..45a5615 100644 --- a/fileadv.tex +++ b/fileadv.tex @@ -1,6 +1,6 @@ %% fileadv.tex %% -%% Copyright (C) 2000-2018 Simone Piccardi. Permission is granted to +%% Copyright (C) 2000-2019 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 "Un preambolo", @@ -553,7 +553,7 @@ regioni richieste e del tipo di operazione richiesta. Il comportamento seguito in questo caso è che la funzione ha successo ed esegue l'operazione richiesta sulla regione indicata; è compito del kernel preoccuparsi di accorpare o dividere le voci nella lista dei \textit{file - lock} per far si che le regioni bloccate da essa risultanti siano coerenti + lock} per far sì che le regioni bloccate da essa risultanti siano coerenti con quanto necessario a soddisfare l'operazione richiesta. \begin{figure}[!htbp] @@ -3479,6 +3479,8 @@ raggruppati in un solo evento. % TODO trattare fanotify, vedi http://lwn.net/Articles/339399/ e % http://lwn.net/Articles/343346/ (incluso nel 2.6.36) +% fanotify_mark() ha FAN_MARK_FILESYSTEM dal 4.20 +% fanotify() ha FAN_OPEN_EXEC dal 4.21/5.0 \subsection{L'interfaccia POSIX per l'I/O asincrono} @@ -3560,8 +3562,8 @@ chiamata una serie di operazioni, usando un vettore di \textit{control esse. Infine il campo \var{aio\_sigevent} è una struttura di tipo \struct{sigevent} -(illustrata in in fig.~\ref{fig:struct_sigevent}) che serve a specificare il -modo in cui si vuole che venga effettuata la notifica del completamento delle +(illustrata in fig.~\ref{fig:struct_sigevent}) che serve a specificare il modo +in cui si vuole che venga effettuata la notifica del completamento delle operazioni richieste; per la trattazione delle modalità di utilizzo della stessa si veda quanto già visto in proposito in sez.~\ref{sec:sig_timer_adv}. @@ -3862,6 +3864,15 @@ per il campo \var{aio\_sigevent} di \struct{aiocb}. % http://bert-hubert.blogspot.de/2012/05/on-linux-asynchronous-file-io.html % https://www.fsl.cs.sunysb.edu/~vass/linux-aio.txt +% TODO trattare la poll API basata sull'I/O asicrono, introdotta con il kernel +% 4.18, vedi https://lwn.net/Articles/743714/, +% https://lwn.net/Articles/742978/, https://lwn.net/Articles/758324/ +% http://git.infradead.org/users/hch/vfs.git/commit/d2d9e26c7cb6d95d521153897910080cf56c7fad +% Reverted + +% TODO trattare la nuova API per l'I/O asincrono (io_uring), introdotta con il +% kernel 5.1, vedi https://lwn.net/Articles/776703/, +% https://lwn.net/ml/linux-fsdevel/20190112213011.1439-1-axboe@kernel.dk/ \section{Altre modalità di I/O avanzato} \label{sec:file_advanced_io} @@ -4114,6 +4125,11 @@ file. % TODO trattare MAP_FIXED_NOREPLACE vedi https://lwn.net/Articles/751651/ e % https://lwn.net/Articles/741369/ +% TODO: verificare MAP_SYNC e MAP_SHARED_VALIDATE, vedi +% https://lwn.net/Articles/731706/, https://lwn.net/Articles/758594/ incluse +% con il 4.15 + + L'argomento \param{flags} specifica infine qual è il tipo di oggetto mappato, le opzioni relative alle modalità con cui è effettuata la mappatura e alle modalità con cui le modifiche alla memoria mappata vengono condivise o @@ -5809,7 +5825,8 @@ file uno \textit{sparse file} a posteriori. % TODO non so dove trattarli, ma dal 2.6.39 ci sono i file handle, vedi -% http://lwn.net/Articles/432757/ +% http://lwn.net/Articles/432757/ (probabilmente da associare alle +% at-functions) % LocalWords: dell'I locking multiplexing cap sez system call socket BSD GID