next up previous contents
Next: Architettura del Sistema Operativo UNIX Up: INTRODUZIONE A LINUX Previous: Breve storia di UNIX

Ma che cos'è esattamente UNIX?

Who doesn't know UNIX is condamned to reinvent it, poorly.

A partire dagli anni '70, sono stati sviluppati molti altri Sistemi Operativi Unix, oltre all'AT&T e al BSD. I S.O. appartenenti a tale famiglia hanno in comune la multiutenza, il multitasking e la maggior parte delle caratteristiche di System V e BSD. Inoltre, praticamente nessuno si chiama esattamente ``UNIX'', anche se quasi tutti hanno un nome che contiene almeno la ``U'' e la ``X''; Linux non fa eccezione... Come stabilire se un S.O. appartiene a tale famiglia? Be', deve utilizzare correttamente codice scritto per UNIX e avere il giusto ``feeling''. Infatti Unix è molto più di una famiglia di Sistemi Operativi: vuol dire anche reti di elaboratori, posta elettronica, Internet (come si sa, la Rete è figlia di UNIX), numerosi applicativi e una cultura basata su questi strumenti e condivisa da una comunità di utenti. Alcuni vanno oltre e considerano UNIX come un'idea astratta, un modo di lavorare che determina un particolare approccio alla risoluzione dei problemi. Infatti utilizzando UNIX si può imparare ad affrontare e risolvere i problemi combinando semplici programmi, come singoli blocchi di una costruzione complessa o di una struttura elegante.

Per ciò che riguarda LINUX, le sue distribuzioni possono somigliare di più a System V oppure di più a BSD, ma mantengono comunque una loro identità e una loro autonomia, sempre in piena conformità alla filosofia di UNIX, fatta eccezione per la negazione della natura commerciale.

Un rovescio della medaglia: proprio a causa del fatto che molti produttori hanno sviluppato versioni diverse di UNIX, dando vita a un mondo affascinante e vario, manca una vera e propria versione standard e questo a volte crea dei problemi concreti, soprattutto agli sviluppatori di software. Per risolvere questo problema, AT&T ha formalizzato il System V pubblicando il System V Interface Definition (SVID), che specifica quali caratteristiche di UNIX verranno mantenute invariate nelle release successive. Inoltre ha sviluppato la System V Verification Suite (SVVS), un insieme di programmi che verificano la compatibilità di un sistema operativo con il SVID. Implicitamente, in questo modo AT&T afferma che considera System V uno standard...
Anche la IEEE ha lavorato in merito e ha definito i cosiddetti POSIX (Portable Operating System Standard for Computer Environments), che individuano dei ``livelli di compatibilità'' di un generico Sistema Operativo con le caratteristiche che si ritiene debba avere uno UNIX standard. Lo standard IEEE 1003.1, comunemente noto come POSIX.1, si concentra sul kernel. Lo standard IEEE 1003.2, o POSIX.2, riguarda l'interfaccia verso l'utente, fondamentalmente la shell, e i tools di UNIX. IEEE 1003.3, o POSIX.3, riguarda lo sviluppo di test di validazione per controllare l'aderenza agli standard. Dopo POSIX.3 viene POSIX.4, e così via. Per ciò che riguarda ``il nostro pinguino'': Linux viene sviluppando facendo riferimento soprattutto a POSIX.1 e POSIX.2.


next up previous contents
Next: Architettura del Sistema Operativo UNIX Up: INTRODUZIONE A LINUX Previous: Breve storia di UNIX

1999-05-16