\begin{figure}[!htb]
\centering \includegraphics[width=14cm]{img/task_struct}
- \caption{Schema semplificato dell'architettura delle strutture usate dal
- kernel nella gestione dei processi.}
+ \caption{Schema semplificato dell'architettura delle strutture (
+ \kstructd{task\_struct}, \kstructd{fs\_struct}, \kstructd{file\_struct})
+ usate dal kernel nella gestione dei processi.}
\label{fig:proc_task_struct}
\end{figure}
Dato che il numero di processori può variare a seconda delle architetture, per
semplificare l'uso dell'argomento \param{mask} la \acr{glibc} ha introdotto un
-apposito dato di tipo, \type{cpu\_set\_t},\footnote{questa è una estensione
+apposito dato di tipo, \typed{cpu\_set\_t},\footnote{questa è una estensione
specifica della \acr{glibc}, da attivare definendo la macro
\macro{\_GNU\_SOURCE}, non esiste infatti una standardizzazione per questo
tipo di interfaccia e POSIX al momento non prevede nulla al riguardo.} che
\fdecl{void \macrod{CPU\_ZERO}(cpu\_set\_t *set)}
\fdesc{Inizializza un insieme di processori vuoto \param{set}.}
\fdecl{void \macrod{CPU\_SET}(int cpu, cpu\_set\_t *set)}
-\fdesc{Inserisce il processore \param{cpu} nell'insieme di processori \param{set}.}
+\fdesc{Inserisce il processore \param{cpu} nell'insieme di
+ processori \param{set}.}
\fdecl{void \macrod{CPU\_CLR}(int cpu, cpu\_set\_t *set)}
-\fdesc{Rimuove il processore \param{cpu} nell'insieme di processori \param{set}.}
+\fdesc{Rimuove il processore \param{cpu} nell'insieme di
+ processori \param{set}.}
\fdecl{int \macrod{CPU\_ISSET}(int cpu, cpu\_set\_t *set)}
-\fdesc{Controlla se il processore \param{cpu} è nell'insieme di processori \param{set}.}
+\fdesc{Controlla se il processore \param{cpu} è nell'insieme di
+ processori \param{set}.}
}
\end{funcbox}}
condition} (vedi sez.~\ref{sec:proc_race_cond}) deve essere sempre
verificata nei minimi dettagli.
-In questo caso il sistema provvede un tipo di dato, il \type{sig\_atomic\_t},
+In questo caso il sistema provvede un tipo di dato, il \typed{sig\_atomic\_t},
il cui accesso è assicurato essere atomico. In pratica comunque si può
assumere che, in ogni piattaforma su cui è implementato Linux, il tipo
\ctyp{int}, gli altri interi di dimensione inferiore ed i puntatori sono