X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=blobdiff_plain;f=prochand.tex;h=9677726cc2be3bda16d335563d4367e08cab970d;hb=897cce4642115b8d50f173b51c45c1f32851c77b;hp=280ace4f26751e210cc0992353709a318ef03b1f;hpb=d8d6fec662a11ed3f7b6377651eead05a77dd187;p=gapil.git diff --git a/prochand.tex b/prochand.tex index 280ace4..9677726 100644 --- a/prochand.tex +++ b/prochand.tex @@ -335,9 +335,8 @@ valore nullo, che non è il \ids{PID} di nessun processo. Normalmente la chiamata a \func{fork} può fallire solo per due ragioni: o ci sono già troppi processi nel sistema, il che di solito è sintomo che qualcos'altro non sta andando per il verso giusto, o si è ecceduto il limite -sul numero totale di processi permessi all'utente argomento su cui torneremo -in sez.~\ref{sec:sys_resource_limit}, (vedi in particolare -tab.~\ref{tab:sys_rlimit_values}). +sul numero totale di processi permessi all'utente, argomento che tratteremo in +dettaglio in sez.~\ref{sec:sys_resource_limit}. L'uso di \func{fork} avviene secondo due modalità principali; la prima è quella in cui all'interno di un programma si creano processi figli cui viene @@ -1128,9 +1127,10 @@ tradizionalmente gli 8 bit meno significativi sono riservati per memorizzare lo \itindex{exit~status} stato di uscita del processo, e gli altri per indicare il segnale che ha causato la terminazione (in caso di conclusione anomala), uno per indicare se è stato generato un \itindex{core~dump} -\textit{core dump}, ecc.\footnote{le definizioni esatte si possono trovare in - \file{} ma questo file non deve mai essere usato - direttamente, esso viene incluso attraverso \file{}.} +\textit{core dump} (vedi sez.~\ref{sec:sig_standard}), ecc.\footnote{le + definizioni esatte si possono trovare in \file{} ma + questo file non deve mai essere usato direttamente, esso viene incluso + attraverso \file{}.} \begin{table}[!htb] \centering @@ -1319,8 +1319,8 @@ campi: \const{CLD\_STOPPED}, \const{CLD\_CONTINUED}, \const{CLD\_TRAPPED} e \const{CLD\_DUMPED} a indicare la ragione del ritorno della funzione, il cui significato è, nell'ordine: uscita normale, terminazione da segnale, - processo fermato, processo riavviato, processo terminato in \textit{core - dump}. + processo fermato, processo riavviato, processo terminato in + \itindex{core~dump} \textit{core dump} (vedi sez.~\ref{sec:sig_standard}). \end{basedescript} Infine Linux, seguendo un'estensione di BSD, supporta altre due funzioni per @@ -1578,7 +1578,8 @@ seguenti proprietà non vengano preservate: \item le mappature dei file in memoria (vedi sez.~\ref{sec:file_memory_map}); \item i segmenti di memoria condivisa SysV (vedi sez.~\ref{sec:ipc_sysv_shm}) e POSIX (vedi sez.~\ref{sec:ipc_posix_shm}); -\item i \textit{memory lock} (vedi sez.~\ref{sec:proc_mem_lock}); +\item i \itindex{memory~locking} \textit{memory lock} (vedi + sez.~\ref{sec:proc_mem_lock}); \item le funzioni registrate all'uscita (vedi sez.~\ref{sec:proc_atexit}); \item i semafori e le code di messaggi POSIX (vedi sez.~\ref{sec:ipc_posix_sem} e sez.~\ref{sec:ipc_posix_mq}); @@ -2154,7 +2155,7 @@ Le ultime funzioni che esamineremo sono quelle che permettono di operare sui gruppi supplementari cui un utente può appartenere. Ogni processo può avere almeno \const{NGROUPS\_MAX} gruppi supplementari\footnote{il numero massimo di gruppi secondari può essere ottenuto con \func{sysconf} (vedi - sez.~\ref{sec:sys_sysconf}), leggendo il parametro + sez.~\ref{sec:sys_limits}), leggendo il parametro \texttt{\_SC\_NGROUPS\_MAX}.} in aggiunta al gruppo primario; questi vengono ereditati dal processo padre e possono essere cambiati con queste funzioni. @@ -3466,15 +3467,15 @@ della priorità da impostare con l'argomento \param{ioprio} di \hline \hline \macro{IOPRIO\_PRIO\_CLASS}\texttt{(\textit{value})} - & dato il valore di una priorità come + & Dato il valore di una priorità come restituito da \func{ioprio\_get} estrae il valore della classe.\\ \macro{IOPRIO\_PRIO\_DATA}\texttt{(\textit{value})} - & dato il valore di una priorità come + & Dato il valore di una priorità come restituito da \func{ioprio\_get} estrae il valore della priorità.\\ \macro{IOPRIO\_PRIO\_VALUE}\texttt{(\textit{class},\textit{prio})} - & dato un valore di priorità ed una classe + & Dato un valore di priorità ed una classe ottiene il valore numerico da passare a \func{ioprio\_set}.\\ \hline @@ -3887,6 +3888,15 @@ Introdotta a partire dal kernel 2.4.21, solo su PowerPC. memoria. Tutti gli argomenti non utilizzati (al momento tutti) devono essere nulli pena la ricezione di un errore di \errval{EINVAL}. Introdotta a partire dal kernel 2.6.32. +% TODO: verificare questa parte +\item[PR\_SET\_CHILD\_SUBREAPER] Imposta il processo indicato con il \ids{PID} + specificato da \param{arg2} come nuovo ``\textsl{genitore adottivo}'' per + tutti i processi discendenti del chiamante che diventeranno orfani, + sostituendo in questo ruolo \cmd{init} (si ricordi quanto illustrato in + sez.~\ref{sec:proc_termination}). Introdotta a partire dal kernel 3.4. +\item[PR\_GET\_CHILD\_SUBREAPER] Ottiene il \ids{PID} del processo a cui + vengono assegnati come figli gli orfani del processo corrente. Introdotta a + partire dal kernel 3.4. \label{sec:prctl_operation} \end{basedescript}