Una parte del kernel, lo \textit{scheduler}, si occupa di stabilire, ad
intervalli fissi e sulla base di un opportuno calcolo delle priorità, quale
``processo'' deve essere posto in esecuzione (il cosiddetto
-\textit{prehemptive scheduling}). Questo verrà comunque eseguito in modalità
+\textit{preemptive scheduling}). Questo verrà comunque eseguito in modalità
protetta; quando necessario il processo potrà accedere alle risorse hardware
soltanto attraverso delle opportune chiamate al sistema che restituiranno il
controllo al kernel.
Benchè BSD non sia uno standard formalizzato, l'implementazione di unix
dell'Università di Berkley, ha provveduto nel tempo una serie di estensioni e
-di API grande rilievo, come il link simbolici (vedi \secref{sec:file_symlink},
-la funzione \func{select}, i socket.
+di API grande rilievo, come il link simbolici, la funzione \code{select}, i
+socket.
Queste estensioni sono state via via aggiunte al sistema nelle varie versioni
del sistema (BSD 4.2, BSD 4.3 e BSD 4.4) come pure in alcuni derivati
propri header file.
Le macro disponibili per i vari standard sono le seguenti:
-\begin{basedescript}{\desclabelwidth{2.0cm}}
+\begin{basedescript}{\desclabelwidth{3cm}\desclabelstyle{\nextlinelabel}}
\item[\macro{\_POSIX\_SOURCE}] definendo questa macro si rendono disponibili
tutte le funzionalità dello standard POSIX.1 (la versione IEEE Standard
1003.1) insieme a tutte le funzionalità dello standard ISO C. Se viene anche
data la precedenza a POSIX.
\end{basedescript}
+In particolare è da sottolineare che le \acr{glibc} supportano alcune
+estensioni specifiche GNU, che non sono comprese in nessuno degli
+standard citati. Per poterle utilizzare esse devono essere attivate
+esplicitamente definendo la macro \macro{\_GNU\_SOURCE} prima di
+includere i vari header file.
+
+
\subsection{Gli standard di Linux}
\label{sec:intro_linux_std}
Da fare (o cassare, a seconda del tempo e della voglia).
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "gapil"
+%%% End: