Storia dei sistemi UNIX
Storia dei sistemi UNIX
1956
Una sentenza dell'antitrust impone alla AT&T, monopolista del settore delle telecomunicazioni, di non invadere ulteriori settori di mercato. Vengono perciò azzerati i costi delle royalties sui brevetti non strettamente legati al settore delle comunicazioni.
http://www.informatica.co.cr/unix/research/acrobat/560125.pdf
1961
Fernando Corbato guida un team, presso il Computation Center del MIT, che finirà per creare il primo sistema operativo multi utente della storia: il Compatible Time-Sharing System (CTSS), fonte di ispirazione per il futuro Multics.
1964
American Telephone and Telegraph (AT&T), Honeywell, General Electric, il MIT ed col patrocinio del Dipartimento di Difesa americano (DARPA), iniziano lo sviluppo del sistema operativo Multics (Multiplexed Information and Computing Service) con l'obiettivo di creare una piattaforma modulare per mainframe GE-645 capace di controllare a distanza altre macchine.
1969
Rivelatosi più complesso del previsto e visti i pesanti ritardi sulla tabella di marcia, AT&T esce dal progetto Multics.
Ken Thompson, uno dei ricercatori dell'AT&T per il progetto Multics, aveva sviluppato, per tale piattaforma, un gioco dal nome "Space Travel". Il gioco consisteva nel pilotare una navicella spaziale attraverso il sistema solare e farla atterrare su vari pianeti. Non avendo più accesso a Multics decise di riscrivere il gioco in Fortran per GECOS (General Electric Comprehensive Operating System, ribattezzato successivamente GCOS quando la GE decise di vendere tale divisione alla Honeywell) su hardware GE-635, ma non era soddisfatto di alcuni aspetti: il display andava a scatti ed un'ora di accesso al GECOS costava ben $75. Fu così che Thompson recuperò un PDP-7 con un buon processore grafico presso i Bell Labs della AT&T ed insieme all'amico e collega Dennis Ritchie vi effettuò il port in assembly utilizzando un cross compilatore assembler per GECOS. Space Travel servì da esercizio per la preparazione di un più sofisticato sistema operativo per PDP-7.
A Thompson e Ritchie si unirono altri ricercatori, fra i quali: Joe Ossanna e Doug McIlroy. Insieme definirono i concetti di processi, device file, produssero un filesystem gerarchico, un interprete di comandi (shell) ed alcune utility (copy, delete, print, edit).
Fino a questo momento tutti i programmi erano scritti su GECOS e trasferiti su PDP-7 attraverso un nastro di carta, quando finalmente fu ultimato un assembler per PDP-7 fu possibile compilare i programmi direttamente sulla macchina PDP.
1970
Peter Neumann conia il nome UNICS (UNiplexed Information and Computing Service) in antitesi con Multics (Multiplexed Information and Computer Services), successivamente modificato da Brian Kernighan in UNIX.
Il Computing Sciences Research Center dei Bell Labs, dove lavorava il team di Thompson e Ritchie, inoltrò alla AT&T una richiesta di $65.000 per finanziare l'acquisto di un DEC PDP-11/20 con la promessa di svilupparci l'editor di testo che la società necessitava per la gestione elettronica dei brevetti. Piuttosto che scrivere da capo l'editor fu preferito portare il già esistente formattatore di testo "roff" da PDP-7 a PDP-11.
1971
Per la primavera del 1971 era disponibile uno Unix funzionante per PDP-11, completamente riscritto in assembly e completo di editor di testo.
Le versioni di tale sistema Unix, denominato in seguito Research Unix per non confonderlo con l'altro Unix non commerciale di AT&T (il PWB/UNIX) erano determinate dal numero dell'edizione del rispettivo manuale per l'utente.
3/11/1971
UNIX 1st Edition: prima edizione del manuale Unix, basato sulla versione per PDP-11. Fu l'Unix usato per processare i documenti relativi ai brevetti della AT&T.
1972
12/6/1972
UNIX 2nd Edition: il numero totale di installazioni arriva a 10. ftp://sunsite.icm.edu.pl/pub/unix/UnixArchive/PDP-11/Distributions/research/1972_stuff/unix_2nd_edition_manual.pdf
Unix viene riscritto nel linguaggio di programmazione C inventato da Ritchie. La migrazione da assembly ad un linguaggio di alto livello come il C garantisce una maggiore e più semplice portabilità del software verso altre piattaforme.
1973
Honeywell sviluppa una nuova generazione di hardware per Multics ed inizia la sua commercializzazione che durerà fino a metà anni '80. http://www.multicians.org/myths.html#fail69
Febbraio 1973
UNIX 3rd Edition: introdotto il linguaggio C e le "pipes", il numero totale delle installazioni sale a 16. I comandi vengono suddivisi tra /bin e /usr/bin (il mountpoint di un secondo hard disk) perché i 256 KB del disco della macchina di test vengono saturati.
Novembre 1973
UNIX 4th Edition: la prima versione di Unix scritta in C. Introduce anche i gruppi (/etc/groups). Il numero di installazioni sale a 20. Il manuale non è più scritto a macchina come i precedenti, ma è formattato con "troff" (successore di roff). Si tratta della prima versione pubblica di Unix, le precedenti erano per uso prevalentemente interno dei Bell Labs.
1973
Evan Ivie e Rudd Canaday, nei Bell Labs, danno vita al Programmer's Workbench (PWB), allo scopo di creare un sistema Unix non tanto finalizzato alla ricerca quanto all'utilizzo pratico per i circa 1000 impiegati nello programmazione di database ed applicati software. L'idea era quella di contenere i costi spostando le attività di sviluppo dagli eterogenei ed espensivi mainframe unificandole verso una comune piattaforma basata su vari PDP-11 per tutte le divisioni della società. Si erano evolute spontaneamente diverse dozzine di varianti ufficiose del Research Unix, tutte usate limitatamente da piccoli gruppi di lavoro e adattate a svolgere unicamente specifici compiti, così il PWB ebbe il compito di standardizzare la situazione creando un "Unix Computer Center" per un utilizzo interdipartimentale.
1974
UNIX 5th Edition: aumenta il numero delle piattaforme PDP supportate ed il numero delle installazioni sale a 50. ftp://gcu-squad.org/mirrors/tuhs/PDP-11/Distributions/research/Dennis_v5/v5man.pdf
Il Professor Bob Fabry di Berkeley acquista per $99 una licenza del Research Unix 4th Edition dalla AT&T da installare su un PDP-11.
Il Computer Systems Research Group (CSRG) dell'università, finanziato dal DARPA, inizia a modificarne i sorgenti e a distribuire la propria variante del sistema operativo con l'acronimo BSD (Berkeley Software Distribution).
1975
A causa del decreto 1956 emesso UNIX non poteva ancora essere trasformato in un prodotto commerciale. Fu in oltre richiesto che la società rilasciasse a chi ne avesse fatto richiesta le licenze di tutti i sorgenti e delle parti del kernel scritte in assembly.
Maggio 1975
UNIX 6th Edition: la prima distribuzione ad avere un discreto successo al di fuori dei cancelli dei Bell Labs, specialmente negli istituti di ricerca e nelle università. Si tratta del primo Unix portato su hardware non PDP. http://wwwlehre.dhbw-stuttgart.de/~helbig/os/v6/doc/
Ken Thompson si prende un periodo di congedo dai Bell Labs per tornare all'università di Berkeley e per supervisionare l'installazione della Versione 6 di Unix su un PDP-11/70. Sistema che verrà poi sviluppato in maniera indipendente e rilasciato sotto il nome di Berkeley Software Distribution (BSD).
Maggio 1975
Con l'RFC 681 l'agenzia ARPA documenta i benefici del sistema Unix utilizzato nei mini-host di ARPANET. http://www.rfc-base.org/txt/rfc-681.txt
CB UNIX o Columbus UNIX, variante del Research Unix, è rilasciato da AT&T per uso interno ai Bell Labs. Sviluppata a Columbus (Ohio) era basata sulle versioni 6 e 7 e sul codice del futuro PWB/UNIX. Poco conosciuta al di fuori della compagnia fu sviluppata per superare alcune carenze del Research Unix nella gestione dei database.
1977
AT&T rilascia PWB/UNIX 1.0 (Programmer's Workbench), variante del Research Unix V6 interna ai Bell Labs.
La Interactive Systems Corporation produce il primo Unix commerciale: IS/1, una variante del Research Unix Versione 6 per PDP-11.
Un gruppo di ricercatori dell'Università di Wollongong eseguono il port del Research Unix: il Wollongong Interdata UNIX per piattaforma Interdata 7/32.
3/9/1978
Rilasiato il first Berkeley Software Distribution (1BSD) per PDP-11. non si tratta di un sistema operativo completo, ma di un add-on alla Versione 6 di Unix in cui Bill Joy (neolaurato a Berkeley, studente di Bob Fabry e futuro co-foundatore di Sun Microsystems) inserisce un compilatore Pascal e l'editor "ex". http://www.informatica.co.cr/bsd/research/1970s/780201.txt
1979
Gennaio 1979
UNIX 7th Edition: si tratta del predecessore di tutti i moderni sistemi Unix. Beneficiando della grande diffusione della versione 6th incorpora varie utility e patch fornite da comunità di sviluppatori esterne ai Bell Labs, nonché del PWB/UNIX. http://cm.bell-labs.com/7thEdMan/
February 1979
La AT&T effettua il port del Research Unix V7 per DEC VAX: UNIX/32V, fornirà le basi per il 4BSD.
10/05/1979
2BSD per PDP-11: Joy aggiunge l'editor vi e la C shell. http://www.informatica.co.cr/bsd/research/1970s/790408.txt
1980
Il primo computer VAX fu installato a Berkeley nel 1978, ma il port di Unix per VAX (UNIX/32V) non ne gestiva la memoria virtuale. Fu così che il kernel del 32V fu in gran parte riscritto dagli studenti di Berkeley per superare questa limitazione.
Marzo 1980
3BSD (VAX): sistema operativo completo che includeva il port delle utility 2BSD per VAX, quelle del 32V ed il nuovo kernel. Chiamato anche VAX/UNIX or VMUNIX (for Virtual Memory Unix). Le immagini dei kernel BSD saranno chiamate /vmunix fino alla versione 4.4BSD.
Ottobre 1980
4BSD: versione aggiornata del 3BSD contenente tra il vari applicativi delivermail (l'antecedente di sendmail).
NB: 4BSD resterà il sistema operativo di prima scelta per VAX fino al rilascio del System III. Diverse organizzazioni dopo aver acquistato la licenza per lo UNIX/32V finivano per ordinare direttamente il 4BSD da Berkeley piuttosto che il nastro col 32V della AT&T. Addirittura varie installazioni all'interno dei Bell Labs utilizzavano 4.xBSD invece che il 32V o System III.
25/08/1980
Microsoft, pensando che quando i personal computer sarebbero diventati sufficientemente potenti Unix sarebbe stato il sistema operativo del futuro, già nel 1978, aveva acquistato da AT&T la licenza per Unix 7th Version; inizia adesso a commercializzare la sua versione di Unix per microcomputer a 16-bit. Non disponendo però anche della licenza per il marchio UNIX chiamo il suo prodotto Microsoft Xenix e decise di venderlo sotto forma di OEM a società come IBM, Intel e Siemens.
1982
Lo Unix Support Group (USG) di AT&T licenzia per uso esterno il sistema UNIX System III. Si tratta di un mix con lo scopo di unificare i vari Unix interni ai Bell Labs: PWB/UNIX 2.0, CB UNIX 3.0, UNIX/TS 3.0.1 e UNIX/32V. Supportava le architetture DEC PDP-11 e VAX.
1983
Il dipartimento di giustizia delle USA impone, con una seconda causa antitrust, alla AT&T di dividersi in varie sotto-compagnie: la più grande "Ma Bell", più vari operatori regionali denominati "Baby Bells". Ciò solleva la AT&T dal rispetto del decreto 1956 permettendogli di trasformare Unix in un prodotto commerciale.
Gennaio 1983
System V (System Five): rilasciato dalla AT&T per DEC VAX e PDP-11, incorporerà l'editor di testo vi e "courses" dal Berkeley Software Distribution.
La nuova licenza commerciale di UNIX non era più così appetibile per uso accademico come quella delle vecchie versioni, così Richard Stallman fondò il Progetto GNU, per realizzare un sistema Unix alternativo e libero.
Settembre 1983
4.2BSD: primo sistema operativo ad includere il supporto per il protocollo TCP/IP
1984
Aprile 1984
System VR2 (System five, Release 2)
http://en.wikipedia.org/wiki/History_of_Unix#1990s
Other companies began to offer commercial versions of the UNIX System for their own mini-computers and workstations. Many of these new Unix flavors were developed from the System V base under a license from AT&T; others were based on BSD. One of the leading developers of BSD, Bill Joy, went on to co-found Sun Microsystems in 1982 and created SunOS for their workstation computers. In 1980, Microsoft announced its first Unix for 16-bit microcomputers called Xenix, which the Santa Cruz Operation (SCO) ported to the Intel 8086 processor in 1983, and eventually branched Xenix into SCO UNIX in 1989.
1988, during the so-called "Unix wars", DEC joined with IBM, Hewlett-Packard, and others to form the Open Software Foundation (OSF) to develop a version of Unix. Dubbed OSF/1, the aim was to compete with System V Release 4 from AT&T Corporation and Sun Microsystems, and it has been argued that a primary goal was for the operating system to be free of AT&T intellectual property.
1988
http://en.wikipedia.org/wiki/Tru64_UNIX
1994, CSRG distributed its last versions, called 4.4BSD-Lite (BSD-licensed) and 4.4BSD-Encumbered (UNIX-licensed).
Bibliografia
IMG
Primo Unix commerciale
http://en.wikipedia.org/wiki/Interactive_Systems_Corporation
Research Unix 7th per x86, rilasciato da Caldera nel 2002
http://www.nordier.com/v7x86/files/README
_SVR5_ HP-UX, IBM AIX, SGI IRIX
DEC OSF/1 AXP Digital UNIX, Digital Equipment Corporation (DEC) Tru64 UNIX Compaq, Tru64 UNIX Hewlett-Packard (HP)
_BSD_
SunOS 4.x
ULTRIX (DEC)
NextStep (NeXT)