Riforma delle macro per le funzioni, si riformatta un bel po' di roba.
[gapil.git] / system.tex
index 2ca86bf8b3cb74ebaaf0204f6befd77ebcb305f2..bd5822bda1efad5c501e1a5465467e73eef83b59 100644 (file)
@@ -1,16 +1,40 @@
 \chapter{La gestione del sistema}
 \label{cha:system}
 
 \chapter{La gestione del sistema}
 \label{cha:system}
 
+In questo capitolo si è raccolta le trattazione delle varie funzioni
+concernenti la gestione generale del sistema che permettono di trattare
+le varie informazioni ad esso connesse, come i limiti sulle risorse, la
+gestione dei tempi, degli errori, degli utenti ed in generale dei vari
+parametri di configurazione del sistema.
 
 
 
 
 
 
 
 
+\section{La gestione delle risorse e dei limiti di sistema}
+\label{sec:sys_limits}
+
+In questa sezione esamimeremo le funzioni che permettono di gestire le
+varie risorse associate ad un processo ed i relativi limiti, e quelle
+relatica al sistema in quanto tale. 
+
+
+\var{tms\_utime}, \var{tms\_stime}, \var{tms\_cutime}, \var{tms\_uetime}
+
+\section{La gestione dei tempi del sistema}
+\label{sec:sys_time}
+
+In questa sezione tratteremo le varie funzioni per la gestione delle
+date e del tempo in un sistema unix-like, e quelle per convertire i vari
+tempi nelle differenti rappresentazioni che vengono utilizzate.
+
+
 \subsection{La misura del tempo in unix}
 \subsection{La misura del tempo in unix}
-\label{sec:intro_unix_time}
+\label{sec:sys_unix_time}
 
 
-Storicamente i sistemi unix-like hanno sempre mantenuto due distinti valori
-per i tempi all'interno del sistema, essi sono rispettivamente chiamati
-\textit{calendar time} e \textit{process time}, secondo le definizioni:
+Storicamente i sistemi unix-like hanno sempre mantenuto due distinti
+valori per i tempi all'interno del sistema, essi sono rispettivamente
+chiamati \textit{calendar time} e \textit{process time}, secondo le
+definizioni:
 \begin{itemize}
 \item \textit{calendar time}: è il numero di secondi dalla mezzanotte del
   primo gennaio 1970, in tempo universale coordinato (o UTC), data che viene
 \begin{itemize}
 \item \textit{calendar time}: è il numero di secondi dalla mezzanotte del
   primo gennaio 1970, in tempo universale coordinato (o UTC), data che viene
@@ -60,8 +84,10 @@ time viene chiamato \textit{CPU time}.
 
 
 
 
 
 
+
+
 \section{La gestione degli errori}
 \section{La gestione degli errori}
-\label{sec:intro_errors}
+\label{sec:sys_errors}
 
 La gestione degli errori è in genere una materia complessa. Inoltre il modello
 utilizzato dai sistema unix-like è basato sull'architettura a processi, e
 
 La gestione degli errori è in genere una materia complessa. Inoltre il modello
 utilizzato dai sistema unix-like è basato sull'architettura a processi, e
@@ -70,7 +96,7 @@ Esamineremo in questa sezione le sue caratteristiche principali.
 
 
 \subsection{La variabile \func{errno}}
 
 
 \subsection{La variabile \func{errno}}
-\label{sec:intro_errno}
+\label{sec:sys_errno}
 
 Quasi tutte le funzioni delle librerie del C sono in grado di individuare e
 riportare condizioni di errore, ed è una buona norma di programmazione
 
 Quasi tutte le funzioni delle librerie del C sono in grado di individuare e
 riportare condizioni di errore, ed è una buona norma di programmazione
@@ -87,7 +113,7 @@ Per riportare il tipo di errore il sistema usa la variabile globale
   anche di definire \var{errno} come un \textit{modifiable lvalue}, quindi si
   può anche usare una macro, e questo è infatti il modo usato da Linux per
   renderla locale ai singoli thread }, definita nell'header \file{errno.h}, la
   anche di definire \var{errno} come un \textit{modifiable lvalue}, quindi si
   può anche usare una macro, e questo è infatti il modo usato da Linux per
   renderla locale ai singoli thread }, definita nell'header \file{errno.h}, la
-variabile è in genere definita come \var{volatile} dato che può essere
+variabile è in genere definita come \type{volatile} dato che può essere
 cambiata in modo asincrono da un segnale (per una descrizione dei segnali si
 veda \secref{cha:signals}), ma dato che un manipolatore di segnale scritto
 bene salva e ripristina il valore della variabile, di questo non è necessario
 cambiata in modo asincrono da un segnale (per una descrizione dei segnali si
 veda \secref{cha:signals}), ma dato che un manipolatore di segnale scritto
 bene salva e ripristina il valore della variabile, di questo non è necessario
@@ -115,7 +141,7 @@ verificato il fallimento della funzione attraverso il suo codice di ritorno.
 
 
 \subsection{Le funzioni \func{strerror} e \func{perror}}
 
 
 \subsection{Le funzioni \func{strerror} e \func{perror}}
-\label{sec:intro_strerror}
+\label{sec:sys_strerror}
 
 Benché gli errori siano identificati univocamente dal valore numerico di
 \var{errno} le librerie provvedono alcune funzioni e variabili utili per
 
 Benché gli errori siano identificati univocamente dal valore numerico di
 \var{errno} le librerie provvedono alcune funzioni e variabili utili per
@@ -137,9 +163,10 @@ provvista\footnote{questa funzione 
 \begin{prototype}{string.h}
 {char * strerror\_r(int errnum, char * buff, size\_t size)} 
   La funzione è analoga a \func{strerror} ma ritorna il messaggio in un buffer
 \begin{prototype}{string.h}
 {char * strerror\_r(int errnum, char * buff, size\_t size)} 
   La funzione è analoga a \func{strerror} ma ritorna il messaggio in un buffer
-  specificato da \var{buff} di lunghezza massima (compreso il terminatore)
-  \var{size}.
+  specificato da \param{buff} di lunghezza massima (compreso il terminatore)
+  \param{size}.
 \end{prototype}
 \end{prototype}
+\noindent
 che utilizza un buffer che il singolo thread deve allocare, per evitare i
 problemi connessi alla condivisione del buffer statico. Infine, per completare
 la caratterizzazione dell'errore, si può usare anche la variabile
 che utilizza un buffer che il singolo thread deve allocare, per evitare i
 problemi connessi alla condivisione del buffer statico. Infine, per completare
 la caratterizzazione dell'errore, si può usare anche la variabile
@@ -205,10 +232,5 @@ o la macro (\texttt{\small 15--17}) associate a quel codice.
     }
   \end{lstlisting}
   \caption{Codice per la stampa del messaggio di errore standard.}
     }
   \end{lstlisting}
   \caption{Codice per la stampa del messaggio di errore standard.}
-  \label{fig:intro_err_mess}
+  \label{fig:sys_err_mess}
 \end{figure}
 \end{figure}
-
-
-\subsection{Valori e limiti del sistema}
-\label{sec:sys_limits}
-