X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=signal.tex;h=1a632833b87d14dbdda2b84198542c22c379511d;hp=ae4c057b0bc8e840034f83e3325a8977710ff491;hb=d8d6fec662a11ed3f7b6377651eead05a77dd187;hpb=dcf2c2df897955ff3503a7c426025457ab456fd7 diff --git a/signal.tex b/signal.tex index ae4c057..1a63283 100644 --- a/signal.tex +++ b/signal.tex @@ -1202,7 +1202,7 @@ L'uso di \func{setitimer} consente dunque un controllo completo di tutte le caratteristiche dei timer, ed in effetti la stessa \func{alarm}, benché definita direttamente nello standard POSIX.1, può a sua volta essere espressa in termini di \func{setitimer}, come evidenziato dal manuale delle \acr{glibc} -\cite{glibc} che ne riporta la definizione mostrata in +\cite{GlibcMan} che ne riporta la definizione mostrata in fig.~\ref{fig:sig_alarm_def}.\footnote{questo comporta anche che non è il caso di mescolare chiamate ad \func{abort} e a \func{setitimer}.} @@ -1897,7 +1897,7 @@ altre informazioni specifiche. messaggi POSIX (vedi sez.~\ref{sec:ipc_posix_mq}).\footnotemark\\ \const{SI\_ASYNCIO}& una operazione di I/O asincrono (vedi - sez.~\ref{sec:file_asyncronous_access}) è stata + sez.~\ref{sec:file_asyncronous_io}) è stata completata.\\ \const{SI\_SIGIO} & segnale di \signal{SIGIO} da una coda (vedi sez.~\ref{sec:file_asyncronous_operation}).\\ @@ -3082,28 +3082,28 @@ con una precisione fino al nanosecondo tramite una struttura \struct{timespec} (la cui definizione è riportata fig.~\ref{fig:sys_timespec_struct}). Il campo \var{it\_value} indica la prima scadenza dell'allarme. Di default, quando il valore di \param{flags} è nullo, questo valore viene considerato come un -intervallo relativo al tempo corrente,\footnote{il primo allarme scatterà cioè - dopo il numero di secondi e nanosecondi indicati da questo campo.} se invece -si usa per \param{flags} il valore \const{TIMER\_ABSTIME},\footnote{al momento - questo è l'unico valore valido per \param{flags}.} \var{it\_value} viene -considerato come un valore assoluto rispetto al valore usato dall'orologio a -cui è associato il timer.\footnote{quindi a seconda dei casi lo si potrà - indicare o come un tempo assoluto, quando si opera rispetto all'orologio di - sistema (nel qual caso il valore deve essere in secondi e nanosecondi dalla - \textit{epoch}) o come numero di secondi o nanosecondi rispetto alla - partenza di un orologio di CPU, quando si opera su uno di questi.} Infine -un valore nullo di \var{it\_value}\footnote{per nullo si intende con valori - nulli per entrambi i i campi \var{tv\_sec} e \var{tv\_nsec}.} può essere -utilizzato, indipendentemente dal tipo di orologio utilizzato, per disarmare -l'allarme. +intervallo relativo al tempo corrente, il primo allarme scatterà cioè dopo il +numero di secondi e nanosecondi indicati da questo campo. Se invece si usa +per \param{flags} il valore \const{TIMER\_ABSTIME}, che al momento è l'unico +valore valido per \param{flags}, allora \var{it\_value} viene considerato come +un valore assoluto rispetto al valore usato dall'orologio a cui è associato il +timer.\footnote{quindi a seconda dei casi lo si potrà indicare o come un tempo + assoluto, quando si opera rispetto all'orologio di sistema (nel qual caso il + valore deve essere in secondi e nanosecondi dalla \textit{epoch}) o come + numero di secondi o nanosecondi rispetto alla partenza di un orologio di + CPU, quando si opera su uno di questi.} Infine un valore nullo di +\var{it\_value}, dover per nullo si intende con valori nulli per entrambi i +campi \var{tv\_sec} e \var{tv\_nsec}, può essere utilizzato, indipendentemente +dal tipo di orologio utilizzato, per disarmare l'allarme. Il campo \var{it\_interval} di \struct{itimerspec} viene invece utilizzato per -impostare un allarme periodico. Se il suo valore è nullo (se cioè sono nulli -tutti e due i valori di detta struttura \struct{timespec}) l'allarme scatterà -una sola volta secondo quando indicato con \var{it\_value}, altrimenti il -valore specificato verrà preso come l'estensione del periodo di ripetizione -della generazione dell'allarme, che proseguirà indefinitamente fintanto che -non si disarmi il timer. +impostare un allarme periodico. Se il suo valore è nullo, se cioè sono nulli +tutti e due i due campi \var{tv\_sec} e \var{tv\_nsec} di detta struttura +\struct{timespec}, l'allarme scatterà una sola volta secondo quando indicato +con \var{it\_value}, altrimenti il valore specificato nella struttura verrà +preso come l'estensione del periodo di ripetizione della generazione +dell'allarme, che proseguirà indefinitamente fintanto che non si disarmi il +timer. Se il timer era già stato armato la funzione sovrascrive la precedente impostazione, se invece si indica come prima scadenza un tempo già passato,