%% process.tex
%%
-%% Copyright (C) 2000-2018 by Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2019 by 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",
positivo di grandi dimensioni.} ma il risultato verrà comunque fornito per
l'intervallo compreso fino al multiplo successivo.
+% TODO: verificare i cambiamenti di sematica con il kernel 5.0 (restrizione
+% solo alle pagine relative al processo stesso) vedi:
+% https://lwn.net/Articles/776034/,
+% https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=574823bfab82d9d8fa47f422778043fbb4b4f50e
+
I risultati della funzione vengono forniti nel vettore puntato da \param{vec},
che deve essere allocato preventivamente e deve essere di dimensione
sufficiente a contenere tanti byte quante sono le pagine contenute
Con \func{mlockall} si possono bloccare tutte le pagine mappate nello spazio
di indirizzi del processo, sia che comprendano il segmento di testo, di dati,
lo \textit{stack}, lo \textit{heap} e pure le funzioni di libreria chiamate, i
-file mappati in memoria, i dati del kernel mappati in user space, la memoria
-condivisa. L'uso dell'argomento \param{flags} permette di selezionare con
-maggior finezza le pagine da bloccare, ad esempio usando \const{MCL\_FUTURE}
-ci si può limitare a tutte le pagine allocate a partire dalla chiamata della
-funzione, mentre \const{MCL\_CURRENT} blocca tutte quelle correntemente
-mappate. L'uso di \func{munlockall} invece sblocca sempre tutte le pagine di
-memoria correntemente mappate nello spazio di indirizzi del programma.
+file mappati in memoria, i dati del kernel mappati in \textit{user space}, la
+memoria condivisa. L'uso dell'argomento \param{flags} permette di selezionare
+con maggior finezza le pagine da bloccare, ad esempio usando
+\const{MCL\_FUTURE} ci si può limitare a tutte le pagine allocate a partire
+dalla chiamata della funzione, mentre \const{MCL\_CURRENT} blocca tutte quelle
+correntemente mappate. L'uso di \func{munlockall} invece sblocca sempre tutte
+le pagine di memoria correntemente mappate nello spazio di indirizzi del
+programma.
A partire dal kernel 4.4 alla funzione \func{mlockall} è stato aggiunto un
altro flag, \const{MCL\_ONFAULT}, che può essere abbinato a entrambi gli altri