X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=signal.tex;h=159ba62cacb325df81ed98c2cd84de84899ee217;hp=cc2a06bb6e3fedde1c6c66da109deca89c0d75e4;hb=f2e24e170e8ad0d5d1194f492e5cb1349ebe5622;hpb=8e1c72a56bbdf56f1b1590101495c5066e6cb247 diff --git a/signal.tex b/signal.tex index cc2a06b..159ba62 100644 --- a/signal.tex +++ b/signal.tex @@ -286,12 +286,12 @@ l'immagine della memoria del processo. Questo file costituisce il cosiddetto \textit{core dump}, e contenendo l'immagine della memoria del processo, consente di risalire allo stato dello -\itindex{stack} \textit{stack} (vedi sez.~\ref{sec:proc_mem_layout}) prima -della terminazione. Questo permette di esaminare il contenuto del file un -secondo tempo con un apposito programma (un \textit{debugger} come \cmd{gdb}) -per investigare sulla causa dell'errore, ed in particolare, grazie appunto ai -dati dello \itindex{stack} \textit{stack}, consente di identificare quale -funzione ha causato l'errore. +\textit{stack} (vedi sez.~\ref{sec:proc_mem_layout}) prima della +terminazione. Questo permette di esaminare il contenuto del file un secondo +tempo con un apposito programma (un \textit{debugger} come \cmd{gdb}) per +investigare sulla causa dell'errore, ed in particolare, grazie appunto ai dati +dello \textit{stack}, consente di identificare quale funzione ha causato +l'errore. Si tenga presente che il \textit{core dump} viene creato non solo in caso di errore effettivo, ma anche se il segnale per cui la sua creazione è prevista @@ -446,7 +446,7 @@ tab.~\ref{tab:sig_action_leg}). \hline T & L'azione predefinita è terminare il processo.\\ C & L'azione predefinita è terminare il processo e scrivere un - \itindex{core~dump} \textit{core dump}.\\ + \textit{core dump}.\\ I & L'azione predefinita è ignorare il segnale.\\ S & L'azione predefinita è fermare il processo.\\ \hline @@ -494,9 +494,9 @@ gestore non ci fosse stato. L'azione predefinita per tutti questi segnali è causare la terminazione del processo che li ha causati. In genere oltre a questo il segnale provoca pure -la registrazione su disco di un file di \itindex{core~dump} \textit{core - dump}, che un debugger può usare per ricostruire lo stato del programma al -momento della terminazione. Questi segnali sono: +la registrazione su disco di un file di \textit{core dump}, che un debugger +può usare per ricostruire lo stato del programma al momento della +terminazione. Questi segnali sono: \begin{basedescript}{\desclabelwidth{2.0cm}} \item[\signal{SIGFPE}] Riporta un errore aritmetico fatale. Benché il nome derivi da \textit{floating point exception} si applica a tutti gli errori @@ -590,13 +590,12 @@ processo, questi segnali sono: controllato da un altro carattere di controllo, ``\textit{QUIT}'', corrispondente alla sequenza \texttt{C-\bslash} sulla tastiera. A differenza del precedente l'azione predefinita, oltre alla terminazione del processo, - comporta anche la creazione di un \itindex{core~dump} \textit{core dump}. - In genere lo si può pensare come corrispondente ad una condizione di errore - del programma rilevata dall'utente. Per questo motivo non è opportuno fare - eseguire al gestore di questo segnale le operazioni di pulizia normalmente - previste (tipo la cancellazione di file temporanei), dato che in certi casi - esse possono eliminare informazioni utili nell'esame dei \itindex{core~dump} - \textit{core dump}. + comporta anche la creazione di un \textit{core dump}. In genere lo si può + pensare come corrispondente ad una condizione di errore del programma + rilevata dall'utente. Per questo motivo non è opportuno fare eseguire al + gestore di questo segnale le operazioni di pulizia normalmente previste + (tipo la cancellazione di file temporanei), dato che in certi casi esse + possono eliminare informazioni utili nell'esame dei \textit{core dump}. \item[\signal{SIGKILL}] Il nome è utilizzato per terminare in maniera immediata qualunque programma. Questo segnale non può essere né intercettato, né @@ -756,15 +755,14 @@ quella di terminare il processo, questi segnali sono: tempo di CPU disponibile, vedi sez.~\ref{sec:sys_resource_limit}. Fino al kernel 2.2 terminava semplicemente il processo, a partire dal kernel 2.4, seguendo le indicazioni dello standard POSIX.1-2001 viene anche generato un - \itindex{core~dump} \textit{core dump}. + \textit{core dump}. \item[\signal{SIGXFSZ}] Sta per \textit{File size limit exceeded}. Questo segnale è generato quando un processo tenta di estendere un file oltre le dimensioni specificate dal limite impostato per le dimensioni massime di un file, vedi sez.~\ref{sec:sys_resource_limit}. Fino al kernel 2.2 terminava semplicemente il processo, a partire dal kernel 2.4, seguendo le indicazioni - dello standard POSIX.1-2001 viene anche generato un \itindex{core~dump} - \textit{core dump}. + dello standard POSIX.1-2001 viene anche generato un \textit{core dump}. \item[\signal{SIGLOST}] Sta per \textit{Resource lost}. Tradizionalmente è il segnale che viene generato quando si perde un advisory lock su un file su