call} quando vengono interrotte dal suddetto
segnale, riproduce cioè il comportamento standard
di BSD.\\
+ \constd{SA\_RESTORER} & Ad uso delle implementazioni delle liberie del C,
+ non deve essere usato nelle applicazioni, serve ad
+ indicare che il campo \var{sa\_restorer} contiene
+ l'indirizzo di un cosiddetto \textit{signal
+ trampoline}.\footnotemark \\
\constd{SA\_SIGINFO} & Deve essere specificato quando si vuole usare un
gestore in forma estesa usando
\var{sa\_sigaction} al posto di
\label{tab:sig_sa_flag}
\end{table}
+\footnotetext{il \itindex{signal~trampoline} \textit{signal trampoline} è il
+ codice usato per tornare da un gestore di segnali, che originariamente
+ veniva inserito nello \textit{stack}, ma i kernel recenti come misura di
+ sicurezza impediscono l'esecuzione di codice dallo stack, per cui questo
+ codice viene spostato altrove (ad esempio nella libreria del C) ed il suo
+ indirizzo viene indicato al kernel nel campo \var{sa\_restorer}.}
+
Come si può notare in fig.~\ref{fig:sig_sigaction} \func{sigaction} permette
di utilizzare due forme diverse di gestore,\footnote{la possibilità è prevista
dallo standard POSIX.1b, ed è stata aggiunta nei kernel della serie 2.1.x
\label{sec:sig_pid_fd}
-% TODO: trattare (qui?) pidfd_send_signal() introdotta con il kernel 5.1 vedi
+% TODO: trattare (qui? oppure sopra in "Ulteriori funzioni di gestione?)
+% pidfd_send_signal() introdotta con il kernel 5.1 vedi
% https://lwn.net/Articles/784831/, https://lwn.net/Articles/773459/ e
-% https://lwn.net/Articles/801319/
-% oppure sopra in "Ulteriori funzioni di gestione"
+% https://lwn.net/Articles/801319/
% TODO: Nuova subsection sui pidfd, e le funzioni correlate, in particolare:
% 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
-% trattare pure pidfd_open() (vedi https://lwn.net/Articles/789023/) per
-% ottere un pid fd pollabile aggiunta con il kernel 5.3
-% man pidfd_send_signal su le versioni più recenti della man pages
-
-
+% https://git.kernel.org/linus/3eb39f47934f trattare pure pidfd_open() (vedi
+% https://lwn.net/Articles/789023/) per ottere un pid fd pollabile aggiunta
+% con il kernel 5.3 ed il nuovo flag PIDFD_NONBLOCK aggionto con il 5.10 (vedi
+% https://git.kernel.org/linus/4da9af0014b5), man pidfd_send_signal su le
+% versioni più recenti della man pages trattare pidfd_getfd aggiunta con il
+% kernel 5.6
% LocalWords: kernel POSIX timer shell control ctrl kill raise signal handler