Revisione e portare tutte le figure ad inconsolata per uniformità con
authorSimone Piccardi <piccardi@gnulinux.it>
Mon, 3 Feb 2014 18:31:20 +0000 (18:31 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Mon, 3 Feb 2014 18:31:20 +0000 (18:31 +0000)
il font usato da latex

29 files changed:
fileadv.tex
gapil.tex
img/addrinfo_list.dia
img/fifoserver.dia
img/file_flock.dia
img/file_posix_lock.dia
img/filedup.dia
img/filemultacc.dia
img/fileshar.dia
img/mmap_boundary.dia
img/mmap_exceed.dia
img/mqstruct.dia
img/pipe.dia
img/pipefork.dia
img/pipeuse.dia
img/procfile.dia
img/semtruct.dia
img/splice_copy.dia
img/task_struct.dia
img/tcp_client_early_abort.dia
img/tcp_close.dia
img/tcp_connection.dia
img/tcp_listen_backlog.dia
img/term_struct.dia
img/three_way_handshake.dia
img/tty_login.dia
img/udp_connection.dia
ipc.tex
signal.tex

index 8b979cb3780e0ebae471a271497d36bc3d67db62..d03ec210ce7a60acba0eaad58e190442012adb34 100644 (file)
@@ -94,8 +94,8 @@ In Linux sono disponibili due interfacce per utilizzare l'\textit{advisory
 \func{flock}, la seconda è quella recepita dallo standard POSIX.1 (che è
 derivata dall'interfaccia usata in System V), che è basata sulla funzione
 \func{fcntl}.  I \textit{file lock} sono implementati in maniera completamente
-indipendente nelle due interfacce,\footnote{in realtà con Linux questo avviene
-  solo dalla serie 2.0 dei kernel.}  che pertanto possono coesistere senza
+indipendente nelle due interfacce (in realtà con Linux questo avviene solo
+dalla serie 2.0 dei kernel) che pertanto possono coesistere senza
 interferenze.
 
 Entrambe le interfacce prevedono la stessa procedura di funzionamento: si
@@ -151,18 +151,21 @@ La prima interfaccia per il \textit{file locking}, quella derivata da BSD,
 permette di eseguire un blocco solo su un intero file; la funzione usata per
 richiedere e rimuovere un \textit{file lock} è \funcd{flock}, ed il suo
 prototipo è:
-\begin{prototype}{sys/file.h}{int flock(int fd, int operation)}
-  
-  Applica o rimuove un \textit{file lock} sul file \param{fd}.
-  
-  \bodydesc{La funzione restituisce 0 in caso di successo, e -1 in caso di
-    errore, nel qual caso \var{errno} assumerà uno dei valori:
-    \begin{errlist}
+
+\begin{funcproto}{
+\fhead{sys/file.h}
+\fdecl{int flock(int fd, int operation)}
+\fdesc{Applica o rimuove un \textit{file lock}.} 
+}
+
+{La funzione ritorna $0$ in caso di successo e $-1$ per un errore, nel qual
+  caso \var{errno} assumerà uno dei valori: 
+  \begin{errlist}
     \item[\errcode{EWOULDBLOCK}] il file ha già un blocco attivo, e si è
       specificato \const{LOCK\_NB}.
-    \end{errlist}
-  }
-\end{prototype}
+  \end{errlist}
+}
+\end{funcproto}
 
 La funzione può essere usata per acquisire o rilasciare un \textit{file lock}
 a seconda di quanto specificato tramite il valore dell'argomento
@@ -195,7 +198,7 @@ ovviamente non possono essere usati insieme. Se con essi si specifica anche
 \const{LOCK\_NB} la funzione non si bloccherà qualora il \textit{file lock}
 non possa essere acquisito, ma ritornerà subito con un errore di
 \errcode{EWOULDBLOCK}. Per rilasciare un \textit{file lock} si dovrà invece
-usare direttamente const{LOCK\_UN}.
+usare direttamente \const{LOCK\_UN}.
 
 Si tenga presente che non esiste una modalità per eseguire atomicamente un
 cambiamento del tipo di blocco (da \textit{shared lock} a \textit{esclusive
@@ -236,7 +239,7 @@ possono avere due processi diversi che aprono lo stesso file.
 
 \begin{figure}[!htb]
   \centering
-  \includegraphics[width=15.5cm]{img/file_flock}
+  \includegraphics[width=14cm]{img/file_flock}
   \caption{Schema dell'architettura del \textit{file locking}, nel caso
     particolare del suo utilizzo da parte dalla funzione \func{flock}.}
   \label{fig:file_flock_struct}
index d73b1b0f2a9600529e9856ab17d683330b39c448..c345e8374f8db3478b4e46253861f3b924a0ce4e 100644 (file)
--- a/gapil.tex
+++ b/gapil.tex
@@ -54,14 +54,14 @@ inner=2.5cm,outer=1.8cm,bottom=3.3cm,top=2.3cm]{geometry}
 {frame=lines,framerule=0.5mm,framesep=2mm,xleftmargin=1cm,xrightmargin=1cm,fontsize=\footnotesize}
 
 \DefineVerbatimEnvironment{Terminal}{Verbatim}
-{xleftmargin=\parindent,xrightmargin=\parindent,fontfamily=courier,fontsize=\footnotesize}
+{xleftmargin=\parindent,xrightmargin=\parindent,fontsize=\footnotesize}
 
 \DefineVerbatimEnvironment{Command}{Verbatim}
 {xleftmargin=\parindent,xrightmargin=\parindent,fontseries=b,
-fontfamily=courier,fontsize=\footnotesize}
+fontsize=\footnotesize}
 
 \DefineVerbatimEnvironment{Console}{Verbatim}
-{commandchars=\\\{\},xleftmargin=\parindent,xrightmargin=\parindent,fontfamily=courier,fontsize=\footnotesize}
+{commandchars=\\\{\},xleftmargin=\parindent,xrightmargin=\parindent,fontsize=\footnotesize}
 
 
 \usepackage[bookmarks=true,plainpages=false,pdfpagelabels,
@@ -79,7 +79,14 @@ hyperfootnotes=false]{hyperref}
 \usepackage{listings}
 \lstloadlanguages{C++}
 \usepackage{color} 
+
+\providecommand{\defaultdesc}{%
+\desclabelstyle{\pushlabel}%
+\renewcommand{\makelabel}[1]{##1}%
+\setlength{\labelwidth}{0pt}%
+}
 \usepackage{mdwlist}
+
 \usepackage{boxedminipage}
 \usepackage{multirow}
 \usepackage{longtable}
index fa5937ffb82480293132a425230d0bf37b0bf8d2..7272564b1de844282022140b09baa5ef04dfdf1d 100644 (file)
Binary files a/img/addrinfo_list.dia and b/img/addrinfo_list.dia differ
index 93b3496b4fa9ee8f460e86e8082a86ff869ac20a..87f087425c69f4849b31fe0164fca3e3fcdeb724 100644 (file)
Binary files a/img/fifoserver.dia and b/img/fifoserver.dia differ
index 5a10b255320e21530d272513a2009d8aa978a5c3..880715e8e3fc46ad0a4ee25db67e26a7eb3e12b3 100644 (file)
Binary files a/img/file_flock.dia and b/img/file_flock.dia differ
index 89a610aafbf055ab98db8cdd94b026655cb7e06f..1ed9337e49920b15e5e074efb28cadd658858482 100644 (file)
Binary files a/img/file_posix_lock.dia and b/img/file_posix_lock.dia differ
index 7230f1a05040d61542534bde191e2cd7bd84beda..de56ca4429c1d7173c4bfdee5a0047ff33cc6d34 100644 (file)
Binary files a/img/filedup.dia and b/img/filedup.dia differ
index 25911095b6ec3b8194bfa91f19a8b0499420c106..87d05893cf2cd436019136228ad324ec679fd0b2 100644 (file)
Binary files a/img/filemultacc.dia and b/img/filemultacc.dia differ
index 01d2f4ad6ba661b0a4fe8ba4622e214448fbaf92..a15579109a0724a50d0f8584a76a035be5796b13 100644 (file)
Binary files a/img/fileshar.dia and b/img/fileshar.dia differ
index 8160a80adcfa67997fd5ca6c0a2b74fca2068ce2..a2010c152b7ef04cf38ffd63fe67cef2e3708f0d 100644 (file)
Binary files a/img/mmap_boundary.dia and b/img/mmap_boundary.dia differ
index 3b5319650a7563fdc071fd5cb3a726d4ce941d72..4cdb795fbfc0fe7ec569bfa975ca33245c75cf80 100644 (file)
Binary files a/img/mmap_exceed.dia and b/img/mmap_exceed.dia differ
index f3ebe0a101c846dc2199b4ea7a14c09bbedb1c5a..b86521cb9b5e804b0f7cea0d5dde1bbc4c2e9f47 100644 (file)
Binary files a/img/mqstruct.dia and b/img/mqstruct.dia differ
index 801cbc600211517c89f44a62641c6a71bb511673..835b2262da0b6cdbe2cffaa8fa6663e894c6bbbf 100644 (file)
Binary files a/img/pipe.dia and b/img/pipe.dia differ
index e64a081fdb65910009d5a3ce58c3df4e18f16410..9b38fdabaa1135a8288be09ff669d99af20532c6 100644 (file)
Binary files a/img/pipefork.dia and b/img/pipefork.dia differ
index e3f62ae9976d3577eaf1d8a6826a68236e737067..d2bfe9853c89e1d22c567f5ec0f1f47b0248e8e7 100644 (file)
Binary files a/img/pipeuse.dia and b/img/pipeuse.dia differ
index ff72ab44a879b1cb76ab5e929cf61aef06e6b126..e17fedfee7f95b64e5d99dc9813c41d40a549ced 100644 (file)
Binary files a/img/procfile.dia and b/img/procfile.dia differ
index 80856c32de833126c497876583e7f302cb26f102..92304e4aeffc2fed40558266220c4f7cd28ac8f8 100644 (file)
Binary files a/img/semtruct.dia and b/img/semtruct.dia differ
index 5c57b6f3682d7a93fb0cf5ff80384137a518d022..b396471cbdb1ae892a7c719f8fb1c0c8d78c1628 100644 (file)
Binary files a/img/splice_copy.dia and b/img/splice_copy.dia differ
index a28e49f31d55adc97fc21e836b7b65c094a78c59..39d21381621a212611599b1c88317e4050126287 100644 (file)
Binary files a/img/task_struct.dia and b/img/task_struct.dia differ
index 72ca2f8bf94acf2bb00a9221bda7558eba81ac67..990968df0801ac27e34715450c0bcb4afe5911f4 100644 (file)
Binary files a/img/tcp_client_early_abort.dia and b/img/tcp_client_early_abort.dia differ
index 94b132ebedabd2b047ab0483e93edec502e69369..f644c2bc9b1cdfab1d1f6bdee35d55e1b6ef8e80 100644 (file)
Binary files a/img/tcp_close.dia and b/img/tcp_close.dia differ
index e827544f14663359c0d9d4b5a2d1d510fe112400..ebdc15dfc51ec7ceac4cc4a098245ac1b88ebe87 100644 (file)
Binary files a/img/tcp_connection.dia and b/img/tcp_connection.dia differ
index 6f8068d5cb481fb8cbb403ade3d812ee82a79ad6..0ac6e47368cc7b66c0e3c0440673c2db6d5f0382 100644 (file)
Binary files a/img/tcp_listen_backlog.dia and b/img/tcp_listen_backlog.dia differ
index 0643f346a19ed292111831a76bf274b3f9b73745..268cb550132135aea8ba60e3c0fa450649b17266 100644 (file)
Binary files a/img/term_struct.dia and b/img/term_struct.dia differ
index 03578c5468d7ff804b06a1daa1cf1b7fcd0567e3..d08c299980da60e23418042a0a8c4ce2e159db62 100644 (file)
Binary files a/img/three_way_handshake.dia and b/img/three_way_handshake.dia differ
index 096e50c32166fc68ca68d22c0a13083c3ebcdd25..5568c528907fd2c63ce9a3ab5d6d48a1dd2d9e64 100644 (file)
Binary files a/img/tty_login.dia and b/img/tty_login.dia differ
index d19630a55c6409a78d93cab3bc996840289321c7..13dfedad1ea428c83797774d198ecdabebe8e125 100644 (file)
Binary files a/img/udp_connection.dia and b/img/udp_connection.dia differ
diff --git a/ipc.tex b/ipc.tex
index 2b34ded891023126f13b8cc841b3cb6105af8fd8..7e5645de914e3c40a15e64e5a33ff522903e912b 100644 (file)
--- a/ipc.tex
+++ b/ipc.tex
@@ -2971,7 +2971,7 @@ funzioni di libreria che ne semplifichino l'uso, automatizzando le operazioni
 più comuni; il codice, contenuto nel file \file{SharedMem.c}, è riportato in
 fig.~\ref{fig:ipc_sysv_shm_func}.
 
-La prima funzione (\texttt{\small 3--16}) è \func{ShmCreate} che, data una
+La prima funzione (\texttt{\small 1--16}) è \func{ShmCreate} che, data una
 chiave, crea il segmento di memoria condivisa restituendo il puntatore allo
 stesso. La funzione comincia (\texttt{\small 6}) con il chiamare
 \func{shmget}, usando il flag \const{IPC\_CREATE} per creare il segmento
@@ -3084,7 +3084,7 @@ Il passo successivo (\texttt{\small 30--39}) è quello di creare gli oggetti di
 intercomunicazione necessari. Si inizia costruendo (\texttt{\small 30}) la
 chiave da usare come riferimento con il nome del programma,\footnote{si è
   usato un riferimento relativo alla home dell'utente, supposto che i sorgenti
-  di GaPiL siano stati installati direttamente in essa. Qualora si effettui
+  di GaPiL siano stati installati direttamente in essa; qualora si effettui
   una installazione diversa si dovrà correggere il programma.} dopo di che si
 richiede (\texttt{\small 31}) la creazione di un segmento di memoria condivisa
 con usando la funzione \func{ShmCreate} illustrata in precedenza (una pagina
@@ -3981,13 +3981,12 @@ descriptor della coda, nel qual caso entrambe ritornano con un codice di
 errore di \errcode{EAGAIN}.
 
 La sola differenza fra le due funzioni è che \func{mq\_timedsend}, passato il
-tempo massimo impostato con l'argomento \param{abs\_timeout}, ritorna comunque
-con un errore di \errcode{ETIMEDOUT}, se invece il tempo è già scaduto al
-momento della chiamata e la coda è piena la funzione ritorna
-immediatamente. Il valore di \param{abs\_timeout} deve essere specificato come
-tempo assoluto tramite una struttura \struct{timespec} (vedi
-fig.~\ref{fig:sys_timespec_struct}) indicato in numero di secondi e
-nanosecondi a partire dal 1 gennaio 1970.
+tempo massimo impostato con l'argomento \param{abs\_timeout}, ritorna con un
+errore di \errcode{ETIMEDOUT}, se invece il tempo è già scaduto al momento
+della chiamata e la coda è piena la funzione ritorna immediatamente. Il valore
+di \param{abs\_timeout} deve essere specificato come tempo assoluto tramite
+una struttura \struct{timespec} (vedi fig.~\ref{fig:sys_timespec_struct})
+indicato in numero di secondi e nanosecondi a partire dal 1 gennaio 1970.
 
 Come per l'inserimento, anche per l'estrazione dei messaggi da una coda sono
 previste due funzioni di sistema, \funcd{mq\_receive} e
index f6ca908c2d04f21ced56256fe02305144271a9c4..a3a2a47d87ce993e0c86f66d4658f95aeaaefe01 100644 (file)
@@ -2669,15 +2669,15 @@ segnali che presenta dei significativi miglioramenti,\footnote{questa
   versione 2.1 della \acr{glibc}.} in particolare sono stati superati tre
 limiti fondamentali dei segnali classici:
 \begin{basedescript}{\desclabelwidth{1cm}\desclabelstyle{\nextlinelabel}}
-\item[I segnali non sono accumulati
+\item[\textbf{I segnali non sono accumulati}
   se più segnali vengono generati prima dell'esecuzione di un gestore
   questo sarà eseguito una sola volta, ed il processo non sarà in grado di
   accorgersi di quante volte l'evento che ha generato il segnale è accaduto.
-\item[I segnali non trasportano informazione]   
+\item[\textbf{I segnali non trasportano informazione}]   
   i segnali classici non prevedono altra informazione sull'evento
   che li ha generati se non il fatto che sono stati emessi (tutta
   l'informazione che il kernel associa ad un segnale è il suo numero).
-\item[I segnali non hanno un ordine di consegna
+\item[\textbf{I segnali non hanno un ordine di consegna}
   l'ordine in cui diversi segnali vengono consegnati è casuale e non
   prevedibile. Non è possibile stabilire una priorità per cui la reazione a
   certi segnali ha la precedenza rispetto ad altri.