%% signal.tex
%%
-%% Copyright (C) 2000-2002 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2003 Simone Piccardi. Permission is granted to
%% copy, distribute and/or modify this document under the terms of the GNU Free
%% Documentation License, Version 1.1 or any later version published by the
%% Free Software Foundation; with the Invariant Sections being "Prefazione",
questo può essere usato anche per i file, posto che la \func{fcntl} abbia
avuto successo.
\item[\const{SIGURG}] Questo segnale è inviato quando arrivano dei dati
- urgenti o \textit{out of band} su di un socket\index{socket}; per maggiori
- dettagli al proposito si veda \secref{sec:xxx_urgent_data}.
+ urgenti o \textit{out-of-band} su di un socket\index{socket}; per maggiori
+ dettagli al proposito si veda \secref{sec:TCP_urgent_data}.
\item[\const{SIGPOLL}] Questo segnale è equivalente a \const{SIGIO}, è
definito solo per compatibilità con i sistemi System V.
\end{basedescript}
L'azione predefinita di questi segnali è di terminare il processo, questi
segnali sono:
\begin{basedescript}{\desclabelwidth{2.0cm}}
-\item[\const{SIGPIPE}] Sta per \textit{Broken pipe}. Se si usano delle pipe o
- delle FIFO è necessario che, prima che un processo inizi a scrivere su di
- essa, un'altro abbia aperto la pipe in lettura (si veda
+\item[\const{SIGPIPE}] Sta per \textit{Broken pipe}. Se si usano delle pipe,
+ (o delle FIFO o dei socket) è necessario, prima che un processo inizi a
+ scrivere su una di esse, che un'altro l'abbia aperta in lettura (si veda
\secref{sec:ipc_pipes}). Se il processo in lettura non è partito o è
terminato inavvertitamente alla scrittura sulla pipe il kernel genera questo
segnale. Se il segnale è bloccato, intercettato o ignorato la chiamata che
- lo ha causato fallisce restituendo l'errore \errcode{EPIPE}
+ lo ha causato fallisce, restituendo l'errore \errcode{EPIPE}.
\item[\const{SIGLOST}] Sta per \textit{Resource lost}. Viene generato quando
c'è un advisory lock su un file NFS, ed il server riparte dimenticando la
situazione precedente.
\includecodesample{listati/Signal.c}
\end{minipage}
\normalsize
- \caption{Una funzione equivalente a \func{signal} definita attraverso
- \func{sigaction}.}
+ \caption{La funzione \funcd{Signal}, equivalente a \func{signal}, definita
+ attraverso \func{sigaction}.}
\label{fig:sig_Signal_code}
\end{figure}
messaggi POSIX (vedi \secref{sec:ipc_posix_mq}); pertanto devono essere
inviati esplicitamente.
-Inoltre per poter usufruire della capacità di restituire dei dati i relativi
-gestori devono essere installati con \func{sigaction} specificando la modalità
-\const{SA\_SIGINFO} che permette di utilizzare la forma estesa
-\var{sa\_sigaction} (vedi \secref{sec:sig_sigaction}). In questo modo tutti i
-segnali real-time possono restituire al gestore una serie di informazioni
-aggiuntive attraverso l'argomento \struct{siginfo\_t}, la cui definizione
-abbiamo già visto in \figref{fig:sig_siginfo_t}, nella trattazione dei gestori
-in forma estesa.
+Inoltre, per poter usufruire della capacità di restituire dei dati, i relativi
+gestori devono essere installati con \func{sigaction}, specificando per
+\var{sa\_flags} la modalità \const{SA\_SIGINFO} che permette di utilizzare la
+forma estesa \var{sa\_sigaction} (vedi \secref{sec:sig_sigaction}). In questo
+modo tutti i segnali real-time possono restituire al gestore una serie di
+informazioni aggiuntive attraverso l'argomento \struct{siginfo\_t}, la cui
+definizione abbiamo già visto in \figref{fig:sig_siginfo_t}, nella trattazione
+dei gestori in forma estesa.
In particolare i campi utilizzati dai segnali real-time sono \var{si\_pid} e
\var{si\_uid} in cui vengono memorizzati rispettivamente il \acr{pid} e