Il sistema Unix èu un sistema operativo multiutente, multitask, il che significa che permette ad un computer mono o multiprocessore di far eseguire simultaneamente più programmi da uno o più utenti.
Il sistema Unix ha uno o più interpreti di comandi (shell) nonché un gran numero di comandi e utilities (assemblatore, compilatore per numerosi linguaggi, trattamento testi, messaggeria elettronica, ecc.). Ad oggi i sistemi Unix sono molto presenti negli ambienti professionali e universitari grazie alla loro grande stabilità, al loro elevato livello di sicurezza e il rispetto di alti standard, soprattutto in materia di rete.
Il primo sistema «Unix» è stato messo a punto da Ken Thompson nei laboratori Bell AT&T a Murray nel New Jersey negli USA a partire dal 1965. Lo scopo di Ken Thompson era di mettere a punto un sistema operativo interattivo semplice, detto "Multics" (Multiplexed Information and Computing System) per far girare un gioco che aveva creato (space travel, una simulazione del sistema solare).
Intorno a Multics si formerà un consorzio composto da MIT (Massassuchetts Institute of Technology), da General Electric Co. e da Bell Lab, autore anche di Multics. Nell'aprile del 1969 i laboratori AT&T decidono di usare il sistema GECOS (General Electric Comprehensive Operating System ) al posto di Multics.
A questo punto Ken Thompson e Dennis Ritchie che si erano uniti alla squadra ebbero bisogno di far funzionare il gioco space travel su un terminale più piccolo (un DEC PDP-7, Programmed Data Processor che aveva unicamente 4K di memoria per far funzionare i programmi degli utenti</i>), ragione per cui riscrissero il sistema per creare una versione ridotta di Multics detta UNICS (UNiplexed Information and Computing Service), rapidamente abbreviata in Unix.
Il primo gennaio 1970 è considerata come la data di nascita del sistema Unix, ciò spiega perché tutti gli orologi di sistema dei sistemi operativi Unix cominciano partendo da questa data. Parallelamente a queste attività, D.Ritchie parteciperà ampiamente alla definizione del linguaggio C (viene considerato come uno dei suoi fondatori insieme a B.W.Kernighan), così tutto il sistema fu interamente riscritto in linguaggio C nel 1973 e battezzato Unix Time-Sharing System (TSS).
Quando il sistema passò alla versione 7 nel 1979, l'evoluzione sarà accompagnata da modifiche importanti come:
L'eliminazione dell'impedimento legato alla dimensione dei file;
Una portabilità migliore del sistema (funzionamento su numerose piattaforme hardware);
L'aggiunta di numerose utilities.
Un decreto del 1996 impediva all'azienda ATT, da cui dipendeva Bell Labs, di commercializzare altri prodotti oltre alle apparecchiature telefoniche o telegrafiche, ragione per cui si prese la decisione nel 1973 di distribuire i codici sorgente di UNIX nelle università per fini educativi. Dal 1977 i ricercatori dell'Università della California svilupparono una versione di Unix partendo dai codici sorgente forniti da AT&T per far funzionare il sistema sulle proprie piattaforme VAX e lo battezzarono BSD per Berkeley Software Developpement. Così nacquero due rami di sviluppo dei codici sorgenti:
Il ramo di AT&T che sarebbe diventato System V di UNIX System Labs (USL);
BSD (Berkeley Software Developpement) sviluppato dall'Università della California.
Nel 1977 AT&T mise i codici sorgente di UNIX a disposizione delle altre aziende, così si svilupparono molti altri UNIX-like:
AIX, Unix commerciale basato su System V sviluppato nel febbraio del 1990 da IBM;
Sun Solaris, Unix commerciale basato su System V e BSD sviluppato da SUN Microsystems;
HP-UX, Unix commerciale basata su BSD sviluppato a partire dal 1986 da Hewlett Packard;
Ultrix, Unix commerciale sviluppato da DEC;
IRIX, Unix commerciale sviluppato da SGI;
Unixware, Unix commerciale sviluppato da Novell;
Unix SCO, Unix commerciale basato su System V sviluppato dal 1979 da Santa Cruz Operations e Hewlett Packard;
Tru64 UNIX, Unix commerciale sviluppato da Compaq.
Nel 1983 AT&T ebbe il diritto di commercializzare su Unix, cosa che porterà alla comparsa di UNIX System V, la versione commerciale del suo sistema Unix. Nel 1985, un professore olandese di nome Andrew Tannenbaum sviluppò un sistema operativo basico, detto Minix, per insegnare la programmazione di sistema ai suoi studenti.
Nel 1991 uno studente finlandese, Linus Torvalds, decise di concepire, basandosi su Minix, un sistema operativo capace di funzionare sulle architetture di tipo 386. Torvalds battezzò questo sistema operativo come "Linux" è pubblicò il seguente messaggio nel gruppo di discussione comp.os.minix:
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby,
won't be big and professional like gnu) for 386(486) AT clones.
Ecco uno schema non esaustivo che ripercorre globalmente la comparsa dei principali sistemi di tipo Unix:
Dato il gran numero di sistemi Unix sviluppati sulla base del System V di AT&T oppure di BSD, dal 1981 ci si è posti il problema di uno standard Unix sul gruppo di discussione /etc/group per assicurare una portabilità massima tra i sistemi:
Nel 1983, AT&T pubblica SVID (System V Interface Definition) che descrive il System V. Questa prima definizione è differente da POSIX;
Nel 1984 il gruppo /etc/group pubblica POSIX, una serie di standard sviluppati sotto l'egida di IEEE(Institute of Electrical and Electronics Engineers). POSIX è generalmente conosciuto con il nome IEEE P1003;
Nello stesso periodo, un consorzio di costruttori (Sun, IBM, HP, DEC, AT&T, Unisys, ICL, ecc.) pubblica lo standard X/Open Portability Guide Issue 3 (XPG3). Questo standard si occupa principalmente dei differenti risultati della localizzazione geografica (data, alfabeto, ecc.).
Foto: © UNIX.