Ancora su AIO.
[gapil.git] / pref.tex
index 80246532c3be33645eca52d5ac3f22bef72843de..db5ca4a89a025d497d9efe07d8fd9b6b30b478bf 100644 (file)
--- a/pref.tex
+++ b/pref.tex
@@ -1,16 +1,18 @@
 \chapter{Prefazione}
 \chapter{Prefazione}
+\label{cha:preface}
 
 Nelle motivazioni in cui si introduce la GNU Free Documentation License (FDL)
 
 Nelle motivazioni in cui si introduce la GNU Free Documentation License (FDL)
-(reperibili su http://www.gnu.org/philosophy/free-doc.html) si dà una grande
-rilevanza all'importanza di disporre di buoni manuali, in quanto la fruibilità
-e la possilità di usare appieno il software libero, vengono notevolemte
-ridotte senza la presenza di un valido manuale altrettanto liberamente
+(reperibili su \href{http://www.gnu.org/philosophy/free-doc.html}
+{http://www.gnu.org/philosophy/free-doc.html}) si dà una grande rilevanza
+all'importanza di disporre di buoni manuali, in quanto la fruibilità e la
+possibilità di usare appieno il software libero vengono notevolmente ridotte
+senza la presenza di un valido manuale che sia altrettanto liberamente
 disponibile.
 
 disponibile.
 
-E come per il software libero è anche in questo caso è di fondamentale
-importanza la libertà di accedere ai sorgenti (e non solo al risultato
-finale, sia questo una stampa o un file formattato) e la libertà di
-modificarli per apportarvi migliorie, aggiornamenti, etc.
+E, come per il software libero, anche in questo caso è di fondamentale
+importanza la libertà di accedere ai sorgenti (e non solo al risultato finale,
+sia questo una stampa o un file formattato) e la libertà di modificarli per
+apportarvi migliorie, aggiornamenti, etc.
 
 Per questo la Free Software Foundation ha approntato una licenza apposita per
 la documentazione, che tiene conto delle differenze che restano fra un testo e
 
 Per questo la Free Software Foundation ha approntato una licenza apposita per
 la documentazione, che tiene conto delle differenze che restano fra un testo e
@@ -18,8 +20,9 @@ un programma.
 
 Esiste però un altro campo, diverso dalla documentazione e dai manuali, in cui
 avere a disposizione testi liberi, aperti e modificabili è essenziale ed
 
 Esiste però un altro campo, diverso dalla documentazione e dai manuali, in cui
 avere a disposizione testi liberi, aperti e modificabili è essenziale ed
-estremamente utile, quello della didattica e dell'educazione.  E benché questo
-sia citato dalla FDL non è altrettanto comune trovarlo messo in pratica.
+estremamente utile: quello della didattica e dell'educazione.  E benché anche
+questo campo sia citato dalla FDL non è altrettanto comune trovarlo messo in
+pratica.
 
 In particolare sarebbe di grande interesse poter disporre di testi didattici
 in grado di crescere, essere adattati alle diverse esigenze, modificati e
 
 In particolare sarebbe di grande interesse poter disporre di testi didattici
 in grado di crescere, essere adattati alle diverse esigenze, modificati e
@@ -27,41 +30,61 @@ ampliati, o anche ridotti per usi specifici, nello stesso modo in cui si fa
 per il software libero.
 
 Questo progetto mira alla stesura di un libro il più completo e chiaro
 per il software libero.
 
 Questo progetto mira alla stesura di un libro il più completo e chiaro
-possibile sulla programmazione in GNU/Linux (che da qui in avanti spesso
-chiameremo semplicemante linux per brevità). Ovviamente essendo i concetti in
-gran parte gli stessi, esso dovrebbe restare valido anche per la
-programmazione in ambito Unix generico, pur restando l'intenzione di
-approfondire in maniera specifica le caratteristiche peculiari di GNU/Linux.
-
-L'idea è quella di riuscire a ottenere alla fine un testo utilizzabile per
-apprendere la programmazione sotto GNU/Linux della stessa qualità (è un
-progetto molto ambizioso ...) dei testi del compianto R. W. Stevens. 
-
-Infatti benché le man pages e il manuale delle librerie del C della GNU siano
-una fonte enorme di informazioni (da cui si è costantemente attinto nella
+possibile sulla programmazione in un sistema basato su un kernel Linux.
+Essendo i concetti in gran parte gli stessi, il testo dovrebbe restare valido
+anche per la programmazione in ambito Unix generico, ma resta una attenzione
+specifica alle caratteristiche peculiari del kernel Linux e delle versioni
+delle librerie del C in uso con esso, ed in particolare per le glibc del
+progetto GNU (che ormai sono usate nella stragrande maggioranza dei casi).
+
+Nonostante l'uso nel titolo del solo ``Linux'', (che si è fatto sia per
+brevità sia perché il libro ha a che fare principalmente con le interfacce del
+kernel e dei principali standard supportati delle librerie del C), voglio
+sottolineare che trovo assolutamente scorretto chiamare in questo modo un
+sistema completo. Il kernel infatti, senza tutte le librerie e le applicazioni
+di base fornite dal progretto GNU, sarebbe sostanzialmente inutile: per questo
+il nome del sistema nella sua interezza non può che essere GNU/Linux.
+
+L'obiettivo finale di questo progetto è quello di riuscire a ottenere un testo
+utilizzabile per apprendere i concetti fondamentali della programmazione di
+sistema della stessa qualità dei libri del compianto R. W.  Stevens (è un
+progetto molto ambizioso ...).
+
+
+Infatti benché le man pages e il manuale delle librerie del C GNU siano una
+fonte inesauribile di informazioni (da cui si è costantemente attinto nella
 stesura di tutto il testo) la loro struttura li rende totalmente inadatti ad
 una trattazione che vada oltre la descrizione delle caratteristiche
 stesura di tutto il testo) la loro struttura li rende totalmente inadatti ad
 una trattazione che vada oltre la descrizione delle caratteristiche
-particolari dell'argomento in esame (in particolare il manuale delle glibc non
-brilla certo per chiarezza espositiva).
+particolari dello specifico argomento in esame (ed in particolare lo
+\textit{GNU C Library Reference Manual} non brilla per chiarezza espositiva).
 
 Per questo motivo si è cercato di fare tesoro di quanto appreso dai testi di
 
 Per questo motivo si è cercato di fare tesoro di quanto appreso dai testi di
-R. Stevens (in particolare Advanced Programming in the Unix Environment e Unix
-Network Programming) per rendere in una sequenza logica il più esplicativa
-possibile la trattazione dei vari argomenti.
+R. Stevens (in particolare \cite{APUE} e \cite{UNP1}) per rendere la
+trattazione dei vari argomenti in una sequenza logica il più esplicativa
+possibile, corredata, quando possibile, da programmi di esempio.
 
 Il progetto prevede il rilascio del testo sotto licenza FDL, ed una modalità
 di realizzazione aperta che permetta di accogliere i contributi di chiunque
 
 Il progetto prevede il rilascio del testo sotto licenza FDL, ed una modalità
 di realizzazione aperta che permetta di accogliere i contributi di chiunque
-sia interessato.
-
-Dato che lo scopo del progetto è la produzione di un libro si è scelto di
-usare latex come "ambiente di sviluppo" del medesimo, sia per l'impareggiabile
-qualità tipografica ottenibile, che per la congruenza dello strumento sia sul
-piano pratico che su quello filosofico.
-
-Il testo sarà, almeno inizialmente, in italiano.
+sia interessato. Tutti i programmi di esempio sono invece rilasciati sotto GNU
+GPL.
 
 
+Dato che sia il kernel che tutte le librerie fondamentali di GNU/Linux sono
+scritte in C, questo sarà il linguaggio di riferimento del testo. In
+particolare il compilatore usato per provare tutti i programmi e gli esempi
+descritti nel testo è lo GNU GCC. Il testo presuppone una conoscenza media del
+linguaggio, e di quanto necessario per scrivere, compilare ed eseguire un
+programma.
 
 
+Infine, dato che lo scopo del progetto è la produzione di un libro, si è
+scelto di usare \LaTeX\ come "ambiente di sviluppo" del medesimo, sia per
+l'impareggiabile qualità tipografica ottenibile, che per la congruenza dello
+strumento, tanto sul piano pratico, quanto su quello filosofico.
 
 
+Il testo sarà, almeno inizialmente, in italiano.
 
 
 
 
 
 
+%%% Local Variables: 
+%%% mode: latex
+%%% TeX-master: "gapil"
+%%% End: