Revisione terzo capitolo

La revisione del terzo capitolo sulle funzioni di gestione dei processi è stata completata.

Si è aggiornata la parte sull’ordine di esecuzione dei processi dopo una fork, si sono aggiunti brevi cenni e i relativi rimandi al numero di argomenti che si possono passare con una exec, si è aggiornata la trattazione di nice con le differenza introdotte nelle ultime versioni dello scheduler, in particolare riguardo le time slice,e si sono trattate tutte le macro per la gestione dei CPU set.

La trattazione della system call clone e la parte finale del capitolo con le funzioni avanzate è ancora incompleta.

Il progetto

GaPiL nasce dalla mia convinzione profonda che la “filosofia” che ispira il software libero si applichi anche ad altri campi che non siano necessariamente quelli della scrittura di programmi per computer. In particolare ritengo che possa assumere una grande rilevanza in ambiti come quelli dell’educazione e della formazione.

Ma se trovare della buona documentazione libera, specie per quanto riguarda i programmi che girano sul sistema GNU/Linux, è ormai relativamente facile, la produzione di buoni testi didattici che insegnino a programmare in questo sistema è ancora molto limitata, soprattutto se li si cercano in lingua italiana.

GaPiL è un tentativo di scrivere un manuale di programmazione di sistema in ambiente di tipo Unix, con una particolare attenzione alle caratteristiche specifiche delle interfacce fornite dal kernel Linux. Per questo motivo si parla di Linux e non di GNU/Linux.

Nonostante questa specificità, essendo la gran parte delle funzioni di sistema standardizzate, la guida dovrebbe risultare utile anche facendo riferimenti ad altri sistemi di tipo Unix come i vari *BSD; in ogni caso si sono sottolineate esplicitamente le caratteristiche specifiche di Linux.

Benché buona parte della trattazione delle funzioni di libreria sia del tutto identica, facendo riferimento a standard generali come POSIX, si è comunque prestata particolare attenzione alle funzioni delle GNU libc, che sono la versione più usata delle librerie del C, senza dimenticare, ove note, di citare le differenze con possibili alternative come le libc5 o le uclibc.

L’obiettivo resta comunque quello di riuscire a produrre un testo, rilasciato sotto GNU FDL, che possa servire a chi si accosta per la prima volta alla programmazione avanzata e di sistema su un kernel Linux, con la speranza di poter un giorno raggiungere la qualità dei lavori del compianto R. W. Stevens.

This work by Simone Piccardi is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported.