X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=procadv.tex;h=7602fe50184bbe3b49508325a40a88a200379ff6;hp=0a5c44168e36a8c4b2c874941001f59051db9410;hb=fa15a3f1ecd64efd8440e46d398fd9976abc3d25;hpb=19bf3de0c106015bf670cfcc82704d9fb3217c87 diff --git a/procadv.tex b/procadv.tex index 0a5c441..7602fe5 100644 --- a/procadv.tex +++ b/procadv.tex @@ -6,7 +6,7 @@ dei processi. Inizieremo con le funzioni che attengono alla gestione avanzata della sicurezza, passando poi a quelle relative all'analisi ed al controllo dell'esecuzione, e alle funzioni per le modalità avanzate di creazione dei processi e l'uso dei cosiddetti \textit{namespace}. Infine affronteremo le -\textit{sytem call} attinenti ad una serie di funzionalità specialistiche come +\textit{system call} attinenti ad una serie di funzionalità specialistiche come la gestione della virgola mobile, le porte di I/O ecc. \section{La gestione avanzata della sicurezza} @@ -1318,6 +1318,7 @@ funzione. + \subsection{La gestione del \textit{Secure Computing}.} \label{sec:procadv_seccomp} @@ -1941,6 +1942,9 @@ si intende creare un \textit{thread}. L'esecuzione del programma creato da \func{sys\_clone} riprende, come per \func{fork}, da dopo l'esecuzione della stessa. +% TODO trattare anche clone3 (vedi https://lwn.net/Articles/792628/), aggiunta +% con il kernel 5.3 + La necessità di avere uno \textit{stack} alternativo c'è solo quando si intende creare un \textit{thread}, in tal caso infatti il nuovo \textit{task} vede esattamente la stessa memoria del \textit{task} @@ -2034,7 +2038,7 @@ utilizzati soltanto se si sono specificati rispettivamente i flag \const{CLONE\_CHILD\_SETTID}. La funzione ritorna un l'identificatore del nuovo \textit{task}, denominato -\texttt{Thread ID} (da qui in avanti \ids{TID}) il cui significato è analogo +\textit{Thread ID} (da qui in avanti \ids{TID}) il cui significato è analogo al \ids{PID} dei normali processi e che a questo corrisponde qualora si crei un processo ordinario e non un \textit{thread}. @@ -2063,7 +2067,7 @@ elenco, che illustra quelle attualmente disponibili:\footnote{si fa padre la \textit{file descriptor table} (vedi sez.~\ref{sec:file_fd}), questo significa che ogni \textit{file descriptor} aperto da un processo verrà visto anche dall'altro e che ogni chiusura o cambiamento dei - \textit{file descriptor flag} di un \textit{file descriptor} verrà per + \textit{file descriptor flags} di un \textit{file descriptor} verrà per entrambi. Se non viene impostato il processo figlio eredita una copia della @@ -2123,6 +2127,9 @@ elenco, che illustra quelle attualmente disponibili:\footnote{si fa \item[\constd{CLONE\_PARENT\_SETTID}] \item[\constd{CLONE\_PID}] +% TODO trattare CLONE_PIDFD introdotto con il kernel 5.2, vedi +% https://lwn.net/Articles/787963/ e anche https://lwn.net/Articles/789023/ + \item[\constd{CLONE\_PTRACE}] se questo flag viene impostato ed il processo chiamante viene tracciato (vedi sez.~\ref{sec:process_ptrace}) anche il figlio viene tracciato. @@ -2187,12 +2194,19 @@ degli altri gruppi, che costituisce poi quello che viene chiamato un % informazioni su setns qui: http://lwn.net/Articles/532748/ % http://lwn.net/Articles/531498/ - +% TODO: se si applicano e ci stanno trattare gli argomenti di ioctl_ns \section{Funzionalità avanzate e specialistiche} \label{sec:process_special} +% TODO: trattare userfaultfd, introdotta con il 4.23, vedi +% http://man7.org/linux/man-pages/man2/userfaultfd.2.html + +% TODO: trattare process_vm_readv/process_vm_writev introdotte con il kernel +% 3.2, vedi http://man7.org/linux/man-pages/man2/process_vm_readv.2.html e i +% precedenti tentativi https://lwn.net/Articles/405346/ + \subsection{La gestione delle operazioni in virgola mobile} \label{sec:process_fenv} @@ -2288,4 +2302,4 @@ Da fare % LocalWords: libcap lcap obj to text dup clear DIFFERS get ncap caps ssize % LocalWords: argument length all setpcap from string name proc cat capgetp % LocalWords: capsetp getcap read sigreturn sysctl protected hardlinks tmp -% LocalWords: dell' symlink symlinks pathname TOCTTOU of +% LocalWords: dell' symlink symlinks pathname TOCTTOU of execve attack kcmp