\headdecl{signal.h}
\funcdecl{int kill(pid\_t pid, int sig)} Invia il segnale \param{sig} al
processo specificato con \param{pid}.
+
+ La funzione restituisce 0 in caso di successo e -1 in caso di errore nel
+ qual caso \func{}
\end{functions}
Lo standard POSIX prevede che il valore 0 per \param{sig} sia usato per
Per questo motivo lo standard POSIX, insieme alla nuova semantica dei segnali
ha introdotto una interfaccia di gestione completamente nuova, che permette un
controllo molto più dettagliato. In particolare lo standard ha introdotto un
-nuovo tipo di dato \type{sigset\_t}.
+nuovo tipo di dato \type{sigset\_t}, che permette di rappresentare un insieme
+di segnali (un \textit{signal set} appunto), in modo da poterlo opportunamente
+manipolare.
+
+In genere il \textit{signal set} è rappresentato da un intero di dimensione
+opportuna (di solito pari al numero di bit dell'architettura della macchina,
+cosa che nel caso dei PC comporta un massimo di 32 segnali distinti), ciascun
+bit del quale è associato ad uno specifico segnale; lo standard POSIX
+definisce cinque funzioni per la manipolazione dei \textit{signal set},
+\func{sigemptyset}, \func{sigfillset}, \func{sigaddset}, \func{sigdelset} e
+\func{sigismember}; i relativi prototipi sono:
+\begin{functions}
+ \headdecl{signal.h}
+
+ \funcdecl{int sigemptyset(sigset\_t *set)} Inizializza un \textit{signal set}
+ vuoto.
+
+ \funcdecl{int sigfillset(sigset\_t *set)} Inizializza un \textit{signal set}
+ pieno (con tutti i segnali).
+
+ \funcdecl{int sigaddset(sigset\_t *set, int signum)} Aggiunge il segnale
+ \param{signum} al \textit{signal set} \param{set}.
+
+ \funcdecl{int sigdelset(sigset\_t *set, int signum)} Toglie il segnale
+ \param{signum} dal \textit{signal set} \param{set}.
+
+ \funcdecl{int sigismember(const sigset\_t *set, int signum)} Controlla se il
+ segnale \param{signum} è nel \textit{signal set} \param{set}
+
+ \bodydesc{Le funzioni prime quattro funzioni ritornano 0, \func{sigismember}
+ ritorna 1 se \param{signum} è in \param{set} e 0 altrimenti, in caso di
+ errore, dovuto al fatto che \param{signum} non è un segnale valido, tutte
+ ritornano -1, con \var{errno} settata a \macro{EINVAL}.}
+\end{functions}
+
+
+
\subsection{La funzione \func{sigaction}}
\label{sec:sig_sigaction}