Merge branch 'master' of ssh://gapil.gnulinux.it/srv/git/gapil
[gapil.git] / fileadv.tex
index 15b32e484783f2ddabda09139565c947682d64c1..4775a6827a196befafa04432deeff23fe3f3689a 100644 (file)
@@ -2788,6 +2788,9 @@ definita la macro \macro{\_GNU\_SOURCE} prima di includere \headfile{fcntl.h}.
 
 \itindbeg{file~lease} 
 
 
 \itindbeg{file~lease} 
 
+% TODO: questa funzionalità potrebbe essere estesa vedi:
+% https://lwn.net/Articles/796000/ 
+
 La prima di queste funzionalità è quella del cosiddetto \textit{file lease};
 questo è un meccanismo che consente ad un processo, detto \textit{lease
   holder}, di essere notificato quando un altro processo, chiamato a sua volta
 La prima di queste funzionalità è quella del cosiddetto \textit{file lease};
 questo è un meccanismo che consente ad un processo, detto \textit{lease
   holder}, di essere notificato quando un altro processo, chiamato a sua volta
@@ -4721,7 +4724,11 @@ caching dei dati.
 % TODO aggiunta MADV_WIPEONFORK dal kernel 4.14 that causes the affected memory
 % region to appear to be full of zeros in the child process after a fork. It
 % differs from the existing MADV_DONTFORK in that the address range will
 % TODO aggiunta MADV_WIPEONFORK dal kernel 4.14 that causes the affected memory
 % region to appear to be full of zeros in the child process after a fork. It
 % differs from the existing MADV_DONTFORK in that the address range will
-% remain valid in the child (dalla notizia in https://lwn.net/Articles/733256/).  
+% remain valid in the child (dalla notizia in
+% https://lwn.net/Articles/733256/).
+% TODO aggiunte MADV_COLD e MADV_PAGEOUT dal kernel 5.4, vedi
+% https://git.kernel.org/linus/9c276cc65a58 e
+% https://git.kernel.org/linus/1a4e58cce84e 
 
 \footnotetext{a partire dal kernel 2.6.32 è stato introdotto un meccanismo che
   identifica pagine di memoria identiche e le accorpa in una unica pagina
 
 \footnotetext{a partire dal kernel 2.6.32 è stato introdotto un meccanismo che
   identifica pagine di memoria identiche e le accorpa in una unica pagina
@@ -5835,15 +5842,25 @@ file uno \textit{sparse file} a posteriori.
 
 % TODO aggiungere FALLOC_FL_INSERT vedi  http://lwn.net/Articles/629965/
 
 
 % TODO aggiungere FALLOC_FL_INSERT vedi  http://lwn.net/Articles/629965/
 
-
 % TODO aggiungere i file hints di fcntl (F_GET_RW_HINT e compagnia)
 % con RWH_WRITE_LIFE_EXTREME e RWH_WRITE_LIFE_SHORT aggiunte con
 % il kernel 4.13 (vedi https://lwn.net/Articles/727385/)
 
 % TODO aggiungere i file hints di fcntl (F_GET_RW_HINT e compagnia)
 % con RWH_WRITE_LIFE_EXTREME e RWH_WRITE_LIFE_SHORT aggiunte con
 % il kernel 4.13 (vedi https://lwn.net/Articles/727385/)
 
+\subsection{Altre funzionalità avanzate}
+\label{sec:file_seal_et_al}
+
+da fare
+
 % TODO non so dove trattarli, ma dal 2.6.39 ci sono i file handle, vedi
 % http://lwn.net/Articles/432757/ (probabilmente da associare alle
 % at-functions) 
 
 % TODO non so dove trattarli, ma dal 2.6.39 ci sono i file handle, vedi
 % http://lwn.net/Articles/432757/ (probabilmente da associare alle
 % at-functions) 
 
+% TODO: trattare i file seal, vedi fcntl / F_ADD_SEAL e memfd_create
+
+% TODO trattare qui ioctl_ficlonerange ?
+
+% TODO trattare qui close_range, vedi https://lwn.net/Articles/789023/
+
 
 % LocalWords:  dell'I locking multiplexing cap sez system call socket BSD GID
 % LocalWords:  descriptor client deadlock NONBLOCK EAGAIN polling select kernel
 
 % LocalWords:  dell'I locking multiplexing cap sez system call socket BSD GID
 % LocalWords:  descriptor client deadlock NONBLOCK EAGAIN polling select kernel