Introduzione ai sistemi operativi con UNIX
Prec Succ

2. FreeBSD

FreeBSD (Free Berkeley Software Distribution) deriva dal codice UNIX originariamente distribuito dall'Università di Berkeley, California. Il software del progetto GNU, del progetto XFree86 e di molti altri progetti open-source è stato portato con relativa facilità su FreeBSD. Perciò molto più che Linux, FreeBSD rappresenta la fusione di molti grandi e differenti progetti.

Rispetto a Linux, FreeBSD ha uno sviluppo più armonico, pulito, controllato e centralizzato ed è facile per l'amministratore fare gli update del sistema. La quasi totalità delle applicazioni che girano in Linux girano in FreeBSD. Le poche applicazioni Linux non open-source che sono distribuite solo in forma binaria (ad es. Oracle, RealPlayer) possono girare in modo molto efficiente in FreeBSD perchè questo è dotato di un layer di compatibilità binaria con Linux. FreeBSD può essere scaricato da siti FTP pubblici su internet ed usato gratuitamente, similmente a Linux. La licenza di FreeBSD è meno restrittiva della licenza GNU GPL adottata dal kernel Linux. Al contrario di Linux, che ha centralizzato solo lo sviluppo del kernel, FreeBSD ha l'intero sviluppo del sistema operativo centralizzato. Esistono solo 3 versioni moderne ed open-source dello UNIX BSD, e sono molto simili tra loro, mentre esistono innumerevoli versioni di Linux. Delle tre versioni di BSD, FreeBSD, NetBSD ed OpenBSD, FreeBSD è il più usato.

Per opinione ed esperienza personale, credo che FreeBSD sia più semplice da installare, meglio documentato (soprattutto per quanto riguarda le manpage per i programmatori), meno esigente in termini di risorse hardware, rispetto ad alcune diffuse distribuzioni di Linux. Per queste ragioni, unite al fatto che FreeBSD è il sistema operativo che uso di più, ho scelto di fare riferimento a FreeBSD in questo testo per quanto riguarda alcuni dettagli del discorso (ad esempio numeri di sezioni del manuale UNIX, percorsi di file, dettagli riguardanti le system call, descrizioni di comandi forniti col sistema e loro opzioni, ecc.). Se usate Linux comunque le cose non dovrebbero essere molto diverse. Dovrebbe essere sufficientemente consultare le manpage dei comandi citati per appurare le eventuali differenze con FreeBSD. Il sottoscritto ci tiene a precisare comunque che non ha niente contro Linux :-)

I sistemi operativi open-source come FreeBSD o Linux sono ideali per lo studio, perchè è possibile ottenere il sorgente completo sia del kernel, sia di tutti gli altri programmi e librerie a corredo del sistema. Con FreeBSD è molto semplice installare i sorgenti: usate sysinstall(8) e installate le parti della distribuzione src che vi interessano. Tutti i sorgenti sono organizzati all'interno della sottodirectory /usr/src. Inoltre, cosa non trascurabile per uno studente che non ha la possibilità di spendere molti quattrini per acquistare manuali e libri, la documentazione dei sistemi open-source è disponibile gratuitamente in formato elettronico.

Se non avete a disposizione un sistema UNIX con cui sperimentare, consiglio vivamente di applicarvi ad installare FreeBSD. La procedura di installazione e di prima configurazione è dettagliata nel FreeBSD Handbook. Voglio solo ripetete alcune indicazioni importanti comunque già contenute nel manuale e riguardanti la diffusa architettura i386: a meno che non avete a disposizione un intero disco da dedicare a FreeBSD, occorre predisporre una partizione primaria libera con spazio sufficiente in cui installarlo. In questo modo sullo stesso disco è possibile avere più di un sistema operativo installato. Un piccolo programma genericamente detto boot manager e posto all'inizio logico del disco permette di scegliere manualmente durante il booting quale sistema avviare. Un programma del genere viene fornito con FreeBSD e potete scegliere di installarlo durante la fase di installazione del sistema operativo. Il boot manager va usato anche quando installate FreeBSD su un disco dedicato che non sia il disco primario.

Una situazione tipica è quando il disco che volete usare contiene una o più partizioni tutte occupate da uno o più sistemi operativi diversi da FreeBSD. Se ci sono in tutto già 4 partizioni, non potete installare FreeBSD senza eliminarne almeno una, perchè sussiste la limitazione che non si possono avere più di 4 partizioni per disco, altrimenti per installare FreeBSD occorre individuare una partizione primaria con sufficiente spazio libero e ridimensionarla utilizzando qualche programma disponibile per i sistemi operativi installati o quelli a corredo sul primo CD-ROM di FreeBSD (directory tools).

Potete scaricare FreeBSD da un mirror italiano oppure acquistare i CD o i DVD da alcuni rivenditori online. Vedere a proposito l'appendice A dell'Handbook.


Prec Indice Succ
Breve introduzione e classificazione dei sistemi operativi   Alcune system call di UNIX per l'I/O