% 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}
% TODO: con il kernel 3.17 è stata introdotta una fuunzionalità di
% sigillatura dei file mappati in memoria e la system call memfd
% (capire se va messo qui o altrove) vedi: http://lwn.net/Articles/593918/
+% col 5.1 aggiunta a memfd F_SEAL_FUTURE_WRITE, vedi
+% https://git.kernel.org/linus/ab3948f58ff8 e https://lwn.net/Articles/782511/
\section{L'intercomunicazione fra processi di POSIX}
% TODO documentare ARCH_SET_CPUID e ARCH_GET_CPUID, introdotte con il kernel
% 4.12, vedi https://lwn.net/Articles/721182/
+
+% TODO documentare PR_SPEC_DISABLE_NOEXEC in 5.1, vedi
+% https://lwn.net/Articles/782511/
+
\label{sec:prctl_operation}
\end{basedescript}
saranno chiusi ed i buffer scaricati su disco. Non verranno invece eseguite le
eventuali funzioni registrate con \func{atexit} e \func{on\_exit}.
-
+% TODO trattare pidfd_send_signal, aggiunta con il kernel 5.1 (vedi
+% https://lwn.net/Articles/783052/) per mandare segnali a processi senza dover
+% usare un PID, vedi anche https://lwn.net/Articles/773459/,
+% https://git.kernel.org/linus/3eb39f47934f
\subsection{Le funzioni di allarme ed i \textit{timer}}
% https://git.kernel.org/linus/d6ed449afdb38f89a7b38ec50e367559e1b8f71f
% change reverted, vedi: https://lwn.net/Articles/752757/
-
% NOTE: dal 3.0 anche i cosiddetti Posix Alarm Timers, con
% CLOCK_REALTIME_ALARM vedi http://lwn.net/Articles/429925/
% TODO: dal 3.10 anche CLOCK_TAI
+% TODO seguire l'evoluzione delle nuove syscall per il problema del 2038,
+% iniziate ad entrare nel kernel dal 5.1, vedi
+% https://lwn.net/Articles/776435/, https://lwn.net/Articles/782511/,
+% https://git.kernel.org/linus/b1b988a6a035
+
Per poter utilizzare queste funzionalità la \acr{glibc} richiede che la
macro \macro{\_POSIX\_C\_SOURCE} sia definita ad un valore maggiore o uguale
di \texttt{199309L} (vedi sez.~\ref{sec:intro_gcc_glibc_std}), inoltre i