Storia dei sistemi UNIX
1956
At&T Antitrust
L'antitrust impedisce all'American Telephone and Telegraph (AT&T), in quanto monopolista nel settore delle telecomunicazioni, di espandersi in ulteriori settori di mercato. Sono cancellate le royalties dei brevetti non strettamente legati al settore di competenza.
http://www.informatica.co.cr/unix/research/acrobat/560125.pdf
1961
CTSS
Fernando Corbato guida il team che, presso il Computation Center del MIT, creerà il primo sistema operativo multi utente della storia: il Compatible Time-Sharing System (CTSS), fonte di ispirazione per il futuro Multics.
1964
Multics
Col patrocinio del Dipartimento di Difesa americano (DARPA) AT&T, Honeywell, General Electric ed il MIT iniziano lo sviluppo del sistema operativo Multics (Multiplexed Information and Computing Service). L'obiettivo è quello di creare una piattaforma modulare per mainframe GE-645 capace di controllare a distanza altre macchine.
1969
AT&T abbandona Multics
Rivelatosi più complesso del previsto e visti i pesanti ritardi sulla tabella di marcia AT&T esce dal progetto Multics.
Ken Thompson, ricercatore di AT&T per il progetto Multics, vi aveva sviluppato un gioco dal nome "Space Travel" (gioco in cui si doveva pilotare una navicella spaziale attraverso il sistema solare e farla atterrare su vari pianeti). Non avendo più accesso a Multics decise di riprogrammare il gioco in Fortran per GECOS (General Electric Comprehensive Operating System, ribattezzato successivamente GCOS quando la GE cedette tale divisione alla Honeywell) su hardware GE-635. Non era però soddisfatto di alcuni aspetti: il display andava a scatti ed un'ora di accesso al GECOS costava ben $75. Fu così che recuperò presso i Bell Labs della AT&T un PDP-7 con un buon processore grafico ed insieme all'amico e collega Dennis Ritchie effettuò il port in assembly del gioco utilizzando un cross compilatore assembler per GECOS. Space Travel servì da esercizio per la preparazione di un più sofisticato sistema operativo per PDP-7.
Ken's New System
Settembre 1969
A Thompson e Ritchie si unirono altri ricercatori, fra i quali: Joe Ossanna e Doug McIlroy. Insieme definirono i concetti di processi e device file; produssero in oltre 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, successivamente fu ultimato un assembler per PDP-7 e fu possibile compilare i programmi direttamente sul PDP.
1970
UNICS
Peter Neumann propone il nome UNICS (UNiplexed Information and Computing Service) in antitesi a Multics (Multiplexed Information and Computer Services) per il Ken's New System. Al contrario di quello che spesso si può leggere in rete, il termine UNICS non fu mai utilizzato né stampato su alcun manuale perché al suo posto fu scelto l'acronimo di Brian Kernighan: UNIX.
Sponsor per UNIX
Il Computing Sciences Research Center dei Bell Labs, dove lavorava il team di Thompson e Ritchie, inoltrò all'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
UNIX su PDP-11
Per la primavera del 1971 era disponibile uno Unix funzionante per PDP-11, completamente riscritto in assembly e completo di editor di testo.
Tali versioni dello Unix Time-Sharing System vennero in seguito denominate Research Unix per non confonderlo col futuro Unix commerciale di AT&T (System III e V) e venivano determinate dal numero dell'edizione del rispettivo manuale per l'utente.
UNIX Time-Sharing 1st Edition
3/11/1971
Prima edizione del manuale Unix, basato sulla versione per PDP-11. Fu lo Unix usato per processare i documenti relativi ai brevetti della AT&T.
http://www.cs.bell-labs.com/who/dmr/1stEdman.html http://minnie.tuhs.org/cgi-bin/utree.pl?file=V1
1972
UNIX Time-Sharing 2nd Edition
12/6/1972
Il numero totale di installazioni arriva a 10.
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V2 http://www.tuhs.org/Archive/PDP-11/Distributions/research/1972_stuff/unix_2nd_edition_manual.pdf
Conversione in C#
Inizia la ristesura di Unix nel linguaggio di programmazione C inventato da Ritchie. La migrazione da assembly ad un linguaggio di alto livello come il C garantisce una più semplice portabilità del software verso altre piattaforme.
1973
Honeywell commercializza Multics
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
UNIX Time-Sharing 3rd Edition
Febbraio 1973
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.
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V3 http://www.textfiles.com/bitsavers/pdf/att/unix/3rd_Edition/UNIX_Programmers_Manual_Third_Edition_Feb73.pdf
UNIX Time-Sharing 4th Edition
Novembre 1973
Prima versione di Unix scritta interamente in C. Introduce il supporto ai gruppi di utenti (/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.
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V4
Programmer's Workbench (PWB)
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 circa 1000 impiegati della AT&T. 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 Time-Sharing 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
Berkeley acquista Unix
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).
http://wolfram.schneider.org/bsd/ftp/article/bsdrole.html http://minnie.tuhs.org/cgi-bin/utree.pl?file=V5
1975
A causa del decreto 1956 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.
UNIX Time-Sharing 6th Edition
Maggio 1975
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/ http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6
ARPANET
Con l'RFC 681 l'agenzia ARPA documenta i benefici del sistema Unix utilizzato nei mini-host di ARPANET.
Thompson va a Berkeley
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).
CB UNIX
Rilasciato il CB UNIX o Columbus UNIX, variante del Research Unix, 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 dell'AT&T fu sviluppata per superare alcune carenze del Research Unix nella gestione dei database.
CB/UNIX was developed to address deficiencies
inherent in Research Unix, notably the lack of interprocess communication
and file locking, considered essential for a database management
system. Several Bell System operation support system products were
based on CB/UNIX such as Switching Control Center System. The primary
innovations were power-fail restart, line disciplines, terminal types,
and IPC features similar to System V's messages and shared memory.
http://sunsite.icm.edu.pl/pub/unix/UnixArchive/PDP-11/Distributions/other/CB_Unix/readme.txt
1977
PWB/UNIX 1.0
Maggio 1977
AT&T rilascia PWB/UNIX 1.0 (Programmer's Workbench), variante del Research Unix V6 interna ai Bell Labs.
http://www.textfiles.com/bitsavers/pdf/att/unix/PWB_UNIX/PWB_UNIX_Edition_1_Section_1_May77.pdf
IS/1, il primo UNIX commerciale
La Interactive Systems Corporation produce il primo Unix commerciale: IS/1, una variante del Research Unix Versione 6 per PDP-11.
Port per Interdata 7/3
Un gruppo di ricercatori dell'Università di Wollongong eseguono il port del Research Unix: il Wollongong Interdata UNIX per piattaforma Interdata 7/32.
1BSD
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
UNIX Time-Sharing 7th Edition
Gennaio 1979
Si tratta del predecessore di tutti i moderni sistemi Unix. Beneficiando della grande diffusione della versione 6 incorpora varie utility e patch fornite da comunità di sviluppatori esterne ai Bell Labs, nonché del PWB/UNIX.
http://cm.bell-labs.com/7thEdMan/ http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7
UNIX/32V
Febbraio 1979
La AT&T effettua il port del Research Unix V7 per DEC VAX: UNIX/32V, fornirà le basi per il 4BSD.
http://sunsite.icm.edu.pl/pub/unix/UnixArchive/VAX/Distributions/32V/
2BSD
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
DEC Unix Engineering Group
Lo sviluppo iniziale di Unix sia avvenuto su apparecchiature Digital Equipment Corporation (DEC), in particolare i sistemi DEC PDP-7 e PDP-11. Anche i computer DEC successivi, come i loro sistemi VAX, furono anche piattaforme popolari sulle quali eseguire Unix. Nonostante ciò DEC fornì per molto tempo unicamente il suo sistema operativo proprietario VMS prima implementare una propria versione di Unix.
Elemento chiave nel portare Unix all'interno della compagnia fu lo Unix Engineering Group (UEG) di DEC, avviato da Bill Munson con Jerry Brenner e Fred Canter, entrambi del DEC premier Customer Service Engineering group, con Bill Shannon (dalla Case Western Reserve University), e Armando Stettner (dai Bell Labs). Altri membri che successivamente si aggiunsero all'UEG furono Joel Magid, Bill Doll e Jim Barclay reclutati da svariati gruppi di marketing e gestione prodotto della DEC.
3BSD
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
Rilasciato il 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.
http://sunsite.icm.edu.pl/pub/unix/UnixArchive/4BSD/Distributions/3bsd.tar.gz
4BSD
Ottobre 1980
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.
Microsoft Xenix
25/08/1980
Già nel 1978 Microsoft, intuendo che quando i PC sarebbero diventati sufficientemente potenti Unix sarebbe stato il sistema operativo del futuro, aveva acquistato da AT&T la licenza per Unix. Adesso inizia a commercializzare la sua versione per microcomputer a 16-bit. Non disponendo anche della licenza per il marchio UNIX chiamò il suo prodotto Microsoft Xenix e decise di venderlo sotto forma di OEM a società come IBM, Intel e Siemens. Inizialmente MS Xenix girava solo su PDP-11.
1981
Xenix su Zilog
Xenix viene portato su Zilog Z8001
UniSoft
Viene fondata la UniSoft Infotech Corporation, società che si impegnerà nella realizzazione di port di Unix per svariate a architetture. Il port della sua Unix Versione 7 sarà la base del futuro SunOS.
4.1BSD
Giugno 1981
Nasce in risposta alle critiche fatte in merito alle performance sui sistemi VAX rispetto al DEC VMS.
Shannon e Stettner del DEC's Unix Engineering Group (UEG), che stavano lavorando al supporto della CPU e device driver su UNIX/32V, decisero successivamente di concentrare i loro sforzi sul 4BSD. Fu così che Bill Joy raggiunse il New Hampshire per lavorare con Shannon e Stettner per confezionare una nuova release di BSD che incorporasse il supporto CPU e i driver dell'UEG, nonché eseguire dei test dell'ultimo minuto su altre configurazioni disponibili negli stabilimenti DEC.
I tre realizzarono una versione beta sul VAX principale utilizzato dal gruppo di sviluppo di VMS e la mattina successiva i terminali salutarono gli sviluppatori VMS con un prompt di login Unix... La macchina dell'UEG fu quindi la prima ad eseguire il nuovo Unix, etichettato 4.5BSD sul tape che Bill Joy portò via con se al termine del lavoro. L'idea era che 5BSD avrebbe dovuto essere la successiva versione, ma gli avvocati dell'università pensarono che sarebbe stato meglio chiamarla 4.1BSD per evitare confusione con l'AT&T UNIX System V.
Dopo il completamento di 4.1BSD Bill Joy lasciò Berkeley per lavorare alla Sun Microsystems. In seguito Bill Shannon lasciò il New Hampshire per unirsi a lui, mentre Armando Stettner rimase alla DEC e più tardi concepì ed avviò il progetto Ultrix.
Unix/v7m
22 Settembre 1981
Il primo prodotto Unix nativo di DEC fu V7m (la "m" sta per modificato) per PDP-11 (successivamente rinominato Ultrix-11) ed era basato sullo Unix 7th Edition dei Bell Labs. Fu sviluppato dall'UEG originale: Fred Canter, Jerry Brenner, Armando Stettner, Bill Burns, Mary Anne Cacciola e Bill Munson, anche se il lavoro principale fu quello di Fred e Jerry. Conteneva numerose fix al kernel e molti nuovi driver di periferiche.
UNIX License Plate
Poco dopo l'annuncio della realizzazione di un sistema UNIX da parte di IBM, Armando Stettner suggerì a Bill Doll che fosse ora per la DEC di rendere disponibile ai clienti un prodotto Unix nativo VAX. Fu fatta una proposta a Bill Munson che in seguito presentò l'idea a Ken Olsen. Si dice che Olsen afferrò una "targa di Unix", la sbatté sul petto di qualcuno e disse "facciamolo".
La storia della targa Unix risale al 1980, Bill Shannon possedeva una Datsun 280ZX con la targa personalizzata "UNIX". Armando Stettner decise di farne una versione finta personalizzando una targa New Hampshire, sulle quali già campeggia il motto "Live Free or Die". A Bill Munson piacque l'idea della targa e anche se il nome DEC non veniva mai menzionato e diede il via libera per il merchandising di targhe da distribuire alle conferenze.
Nel 1982 Stettner riuscì ad ottenere una versione ufficiale della targa UNIX del New Hampshire, poco dopo che Shannon ebbe lasciato la DEC per lavorare alla Sun Microsystems.
http://www.unix.org/license-plate.html
1982
UNIX System III
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.
http://www.textfiles.com/bitsavers/pdf/att/unix/System_III/UNIX_Users_Manual_Release_3_Jun80.pdf
MS & SCO
Inizia la collaborazione tra Microsoft e Santa Cruz Operation (SCO) su Xenix.
Sun Microsystems
Bill Joy, ex studente di Berkeley e sviluppatore BSD, fonda insieme a Vinod Khosia, Scott McNealy e Andy Bechtolsheim la Sun Microsystems.
Sun UNIX 0.7
Rilasciato Sun UNIX 0.7, basato su UniSoft UNIX v7, verrà utilizzato sui sistemi Sun-1
1983
Smembramento AT&T
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.
La nuova licenza commerciale di UNIX non sarà più così appetibile, per uso accademico, come quella delle vecchie versioni.
UNIX System V (System Five)
Gennaio 1983
Rilasciato dalla AT&T per DEC VAX e PDP-11, incorporerà l'editor di testo vi e "courses" dal Berkeley Software Distribution.
TRS-Xenix per M68K
Gennaio 1983
La Tandy Corporation commercia TRS-XENIX per i suoi sistemi basati su CPU Motorola 68000.
4.2BSD
Settembre 1983
Primo sistema operativo ad includere il supporto per il protocollo TCP/IP.
SunOS 1.0
Basato su 4.1BSD, aggiunge il supporto per le Workstation Sun-2
GNU
27 Settembre 1983
Richard Stallman annuncia al mondo il Progetto GNU per realizzazione di un sistema Unix alternativo e libero.
https://www.gnu.org/gnu/initial-announcement.en.html
1984
Varie compagnie iniziano a commercializzare versioni di UNIX per i loro rispettivi mini-computer o workstations. Molte baseranno i loro sistemi sul System V licenziato dalla AT&T, mentre altri opteranno per i BSD.
Xenix su Apple
Un port per Apple Lisa con CPU M68K sviluppato da SCO e Microsoft e distribuito da SCO.
SCO Xenix per PC
Basato essenzialmente su 4.2BSD
HP-UX
Hewlett-Packard rilascia HP-UX 1.0 la sua versione di UNIX, basata su UNIX System III. Supporta gli HP Integral PC con CPU M68K.
System VR2 (System V, Release 2)
Aprile 1984
SunOS 1.1
Aprile 1984
http://en.wikipedia.org/wiki/History_of_Unix#1990s
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.
Ultrix-32
La prima release di Ultrix fu Ultrix-32 (detta anche semplicemente ULTRIX), era basato su 4.2BSD con alcune features non relative al kernel provenienti da System V. Fu principalmente un parto della mente di Armando Stettner. Il suo scopo era offrire uno Unix nativo per VAX supportato ufficialmente da DEC.
Anche in futuro lo Unix Engineering Group (UEG) e Berkeley collaboreranno fra loro per supportare al meglio l'architettura VAX.
ftp://ifctfvax.harhan.org/pub/UNIX/thirdparty/Ultrix-32/sources/
1985
SunOS 1.2
Gennaio 1985
Basato su 4.1BSD
SunOS 2.0
Maggio 1985
Basato su 4.2BSD, introduce il supporto al filesystem layer (VFS) e al protocollo Network File System (NFS )
1986
4.3BSD
Giugno 1986
http://minnie.tuhs.org/Unix_History/4bsd
MINIX
22 Dicembre 1986
http://www.informatica.co.cr/linux/research/1986/1222.htm
http://en.wikipedia.org/wiki/Unix_wars
1987
In 1987, SCO ported Xenix to the 386 processor, a 32-bit chip, this after securing knowledge from Microsoft insiders that Microsoft was no longer developing Xenix.[26] Xenix System V release 2.3.1 introduced support for i386, SCSI and TCP/IP. SCO's Xenix System V/386 was the first 32-bit operating system available on the market for the x86 CPU Architecture.
Microsoft continued to use Xenix internally, submitting a patch to support functionality in UNIX to AT&T in 1987, which trickled down to the code base of both Xenix and SCO UNIX. Microsoft is said to have used Xenix on Sun workstations and VAX minicomputers extensively within their company as late as 1992.
1988
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
_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)