Altro materiale timer e correzioni ortografiche
authorSimone Piccardi <piccardi@gnulinux.it>
Sun, 20 Jun 2010 13:59:31 +0000 (13:59 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Sun, 20 Jun 2010 13:59:31 +0000 (13:59 +0000)
signal.tex

index 83f35f1503098d93ff4ac8d86046085b31c450a6..c89302f7af6c7116dae54a59e3b39021f1e2a15e 100644 (file)
@@ -2717,7 +2717,7 @@ prevalentemente con i \itindex{thread} \textit{thread}; \funcd{sigwaitinfo} e
   segnale in \param{info}.
   
   \funcdecl{int sigtimedwait(const sigset\_t *set, siginfo\_t *info, const
   segnale in \param{info}.
   
   \funcdecl{int sigtimedwait(const sigset\_t *set, siginfo\_t *info, const
-    struct timespec *timout)}
+    struct timespec *timeout)}
   
   Analoga a \func{sigwaitinfo}, con un la possibilità di specificare un
   timeout in \param{timeout}.
   
   Analoga a \func{sigwaitinfo}, con un la possibilità di specificare un
   timeout in \param{timeout}.
@@ -2874,10 +2874,10 @@ valore maggiore di 0, e che le ulteriori macro
 \macro{\_POSIX\_THREAD\_CPUTIME} indicano la presenza dei rispettivi orologi
 di tipo \const{CLOCK\_MONOTONIC}, \const{CLOCK\_PROCESS\_CPUTIME\_ID} e
 \const{CLOCK\_PROCESS\_CPUTIME\_ID}.\footnote{tutte queste macro sono definite
 \macro{\_POSIX\_THREAD\_CPUTIME} indicano la presenza dei rispettivi orologi
 di tipo \const{CLOCK\_MONOTONIC}, \const{CLOCK\_PROCESS\_CPUTIME\_ID} e
 \const{CLOCK\_PROCESS\_CPUTIME\_ID}.\footnote{tutte queste macro sono definite
-  in \texttt{unistd.h}, che peranto deve essere incluso per poterle
+  in \texttt{unistd.h}, che pertanto deve essere incluso per poterle
   controllarle.} Infine se il kernel ha il supporto per gli \textit{high
   resolution timer} un elenco degli orologi e dei timer può essere ottenuto
   controllarle.} Infine se il kernel ha il supporto per gli \textit{high
   resolution timer} un elenco degli orologi e dei timer può essere ottenuto
-tremite il file \procfile{/proc/timer\_list}.
+tramite il file \procfile{/proc/timer\_list}.
 
 Le due funzioni che ci consentono rispettivamente di modificare o leggere il
 valore per uno degli orologi \textit{real-time} sono \funcd{clock\_settime} e
 
 Le due funzioni che ci consentono rispettivamente di modificare o leggere il
 valore per uno degli orologi \textit{real-time} sono \funcd{clock\_settime} e
@@ -2909,7 +2909,7 @@ tab.~\ref{tab:sig_timer_clockid_types} o con il risultato di una chiamata a
 \func{clock\_getcpuclockid} (che tratteremo a breve), il secondo argomento
 invece è sempre il puntatore \param{tp} ad una struttura \struct{timespec}
 (vedi fig.~\ref{fig:sys_timespec_struct}) che deve essere stata
 \func{clock\_getcpuclockid} (che tratteremo a breve), il secondo argomento
 invece è sempre il puntatore \param{tp} ad una struttura \struct{timespec}
 (vedi fig.~\ref{fig:sys_timespec_struct}) che deve essere stata
-precedentemente allocata; nel primo caso questa devrà anche essere stata
+precedentemente allocata; nel primo caso questa dovrà anche essere stata
 inizializzata con il valore che si vuole impostare sull'orologio, mentre nel
 secondo verrà restituito al suo interno il valore corrente dello stesso.
 
 inizializzata con il valore che si vuole impostare sull'orologio, mentre nel
 secondo verrà restituito al suo interno il valore corrente dello stesso.
 
@@ -2946,7 +2946,7 @@ orologio, la funzione 
 }
 \end{functions}
 
 }
 \end{functions}
 
-La funzione richiede come primo argomento l'indicazione dell' orologio di cui
+La funzione richiede come primo argomento l'indicazione dell'orologio di cui
 si vuole conoscere la risoluzione (effettuata allo stesso modo delle due
 precedenti) e questa verrà restituita in una struttura \struct{timespec}
 all'indirizzo puntato dall'argomento \param{res}. 
 si vuole conoscere la risoluzione (effettuata allo stesso modo delle due
 precedenti) e questa verrà restituita in una struttura \struct{timespec}
 all'indirizzo puntato dall'argomento \param{res}. 
@@ -3089,7 +3089,7 @@ introduce una struttura di uso generale, \struct{sigevent}, che viene
 utilizzata anche da altre funzioni, come quelle per l'I/O asincrono (vedi
 sez.~\ref{sec:file_asyncronous_io}) o le code di messaggi POSIX (vedi
 sez.~\ref{sec:ipc_posix_mq})) e che serve ad indicare in maniera generica un
 utilizzata anche da altre funzioni, come quelle per l'I/O asincrono (vedi
 sez.~\ref{sec:file_asyncronous_io}) o le code di messaggi POSIX (vedi
 sez.~\ref{sec:ipc_posix_mq})) e che serve ad indicare in maniera generica un
-meccanimo di notifica. 
+meccanismo di notifica. 
 
 \begin{figure}[!htb]
   \footnotesize \centering
 
 \begin{figure}[!htb]
   \footnotesize \centering
@@ -3105,11 +3105,11 @@ meccanimo di notifica.
 La struttura \struct{sigevent} (accessibile includendo \texttt{time.h}) è
 riportata in fig.~\ref{fig:struct_sigevent};\footnote{la definizione effettiva
   dipende dall'implementazione, quella mostrata è la versione descritta nella
 La struttura \struct{sigevent} (accessibile includendo \texttt{time.h}) è
 riportata in fig.~\ref{fig:struct_sigevent};\footnote{la definizione effettiva
   dipende dall'implementazione, quella mostrata è la versione descritta nella
-  pagina di manule di \func{timer\_create}.} il campo \var{sigev\_notify} è il
+  pagina di manuale di \func{timer\_create}.} il campo \var{sigev\_notify} è il
 più importante essendo quello che indica le modalità della notifica, gli altri
 dipendono dal valore che si è specificato per \var{sigev\_notify}, si sono
 riportati in tab.~\ref{tab:sigevent_sigev_notify}. La scelta del meccanismo di
 più importante essendo quello che indica le modalità della notifica, gli altri
 dipendono dal valore che si è specificato per \var{sigev\_notify}, si sono
 riportati in tab.~\ref{tab:sigevent_sigev_notify}. La scelta del meccanismo di
-nnotifica viene fatta impostando uno dei valori di
+notifica viene fatta impostando uno dei valori di
 tab.~\ref{tab:sigevent_sigev_notify} per \var{sigev\_notify}, e fornendo gli
 eventuali ulteriori argomenti necessari a secondo della scelta
 effettuata. Diventa così possibile indicare l'uso di un segnale o l'esecuzione
 tab.~\ref{tab:sigevent_sigev_notify} per \var{sigev\_notify}, e fornendo gli
 eventuali ulteriori argomenti necessari a secondo della scelta
 effettuata. Diventa così possibile indicare l'uso di un segnale o l'esecuzione
@@ -3184,7 +3184,7 @@ sia stato impostato, dal limite \const{RLIMIT\_SIGPENDING}
 
 Una volta creato il timer \func{timer\_create} ed ottenuto il relativo
 identificatore, si può attivare o disattivare un allarme (in gergo
 
 Una volta creato il timer \func{timer\_create} ed ottenuto il relativo
 identificatore, si può attivare o disattivare un allarme (in gergo
-\textsl{armare} o \textsl{disarmare} il timer) con la fuzione
+\textsl{armare} o \textsl{disarmare} il timer) con la funzione
 \funcd{timer\_settime}, il cui prototipo è:
 \begin{functions}
   \headdecl{signal.h}
 \funcd{timer\_settime}, il cui prototipo è:
 \begin{functions}
   \headdecl{signal.h}
@@ -3208,11 +3208,13 @@ identificatore, si pu
 }
 \end{functions}
 
 }
 \end{functions}
 
-La funzione richiede che si indici la scadenza del timer con
+La funzione richiede che si indichi la scadenza del timer con
 l'argomento \param{new\_value}, che deve essere specificato come puntatore ad
 una struttura di tipo \struct{itimerspec}, la cui definizione è riportata in
 l'argomento \param{new\_value}, che deve essere specificato come puntatore ad
 una struttura di tipo \struct{itimerspec}, la cui definizione è riportata in
-fig.~\ref{fig:struct_itimerspec}, se \param{old\_value} è diverso da
-\val{NULL} il precedente valore verrà restituito in questa struttura.
+fig.~\ref{fig:struct_itimerspec}; se il puntatore \param{old\_value} è diverso
+da \val{NULL} il valore corrente della scadenza verrà restituito in una
+analoga struttura, ovviamente in entrambi i casi le strutture devono essere
+state allocate. 
 
 \begin{figure}[!htb]
   \footnotesize \centering
 
 \begin{figure}[!htb]
   \footnotesize \centering
@@ -3227,7 +3229,7 @@ fig.~\ref{fig:struct_itimerspec}, se \param{old\_value} 
 
 Ciascuno dei due campi di \struct{itimerspec} indica un tempo, da specificare
 con una precisione fino al nanosecondo tramite una struttura \struct{timespec}
 
 Ciascuno dei due campi di \struct{itimerspec} indica un tempo, da specificare
 con una precisione fino al nanosecondo tramite una struttura \struct{timespec}
-(la cui definizione è riportata fig.~\ref{fig:sys_timespec_struct})). Il campo
+(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{flag} è nullo, questo valore viene considerato come un
 intervallo relativo al tempo corrente,\footnote{il primo allarme scatterà cioè
 \var{it\_value} indica la prima scadenza dell'allarme. Di default, quando il
 valore di \param{flag} è nullo, questo valore viene considerato come un
 intervallo relativo al tempo corrente,\footnote{il primo allarme scatterà cioè
@@ -3238,11 +3240,16 @@ viene considerato come valore assoluto rispetto al valore dell'orologio a cui
   può indicare sia un tempo assoluto, se si opera rispetto all'orologio di
   sistema (nel qual caso il valore deve essere in secondi e nanosecondi dalla
   \textit{epoch}) o come un certo numero di secondi o nanosecondi rispetto
   può indicare sia un tempo assoluto, se si opera rispetto all'orologio di
   sistema (nel qual caso il valore deve essere in secondi e nanosecondi dalla
   \textit{epoch}) o come un certo numero di secondi o nanosecondi rispetto
-  alla partenza di un orologio di CPU, }
+  alla partenza di un orologio di CPU.}
+
+Il campo \var{it\_interval} consente invece di importare 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 estensione del periodo di ripetizione della generazione dell'allarme.
+
+Se si indica un tempo 
 
 
-Se il valore di \var{it\_interval} è nullo (se cioè sono nulli tutti e due i
-valori di detta struttura \struct{timespec}) l'allarme scatterà 
 
 % TODO trattare i Posix timer, e le fuzioni:
 % timer_getoverrun, timer_gettime, timer_settime, timer_create, timer_delete
 
 % TODO trattare i Posix timer, e le fuzioni:
 % timer_getoverrun, timer_gettime, timer_settime, timer_create, timer_delete
@@ -3326,6 +3333,9 @@ eventi generici) basato direttamente sull'uso di file descriptor.
 % LocalWords:  openat readlinkat renameat symlinkat unlinkat utimensat utimes
 % LocalWords:  LinuxThread NTPL Library clockid evp timerid sigev notify high
 % LocalWords:  resolution CONFIG RES patch REALTIME MONOTONIC RAW NTP CPUTIME
 % LocalWords:  openat readlinkat renameat symlinkat unlinkat utimensat utimes
 % LocalWords:  LinuxThread NTPL Library clockid evp timerid sigev notify high
 % LocalWords:  resolution CONFIG RES patch REALTIME MONOTONIC RAW NTP CPUTIME
+% LocalWords:  tick calendar The Epoch list getcpuclockid capability CAP getres
+% LocalWords:  ENOSYS pthread ENOENT NULL attribute itimerspec new old ABSTIME
+% LocalWords:  epoch multiplexing
 
 
 %%% Local Variables: 
 
 
 %%% Local Variables: