Che cos'è Unix e perché è importante?
La maggior parte dei sistemi operativi può essere raggruppata in due famiglie diverse. A parte i sistemi operativi basati su Windows NT, quasi tutto il resto traccia la sua eredità su Unix.
Linux, Mac OS X, Android, iOS, Chrome OS, Orbis OS utilizzati su PlayStation 4, qualunque firmware sia in esecuzione sul router: tutti questi sistemi operativi sono spesso chiamati sistemi operativi "simili a Unix".
Il design di Unix vive oggi
Unix è stato sviluppato nei laboratori Bell di AT & T nella seconda metà degli anni '60. La versione iniziale di Unix aveva alcuni importanti attributi di design che vivono oggi.
Uno è la "filosofia Unix" di creare piccole utility modulari che fanno una cosa e le fanno bene. Se hai familiarità con l'uso di un terminale Linux, questo dovrebbe esserti familiare: il sistema offre una serie di utility che possono essere combinate in modi diversi attraverso pipe e altre funzionalità per eseguire attività più complesse. Anche i programmi grafici probabilmente chiamano le utility più semplici in background per fare il sollevamento pesante. Ciò facilita anche la creazione di script di shell, mettendo insieme semplici strumenti per fare cose complicate.
Unix aveva anche un singolo file system che i programmi usano per comunicare tra loro. Questo è il motivo per cui "tutto è un file" su Linux, inclusi dispositivi hardware e file speciali che forniscono informazioni di sistema o altri dati. È anche il motivo per cui solo Windows ha lettere di unità, che ha ereditato dal DOS - su altri sistemi operativi, ogni file sul sistema fa parte di una singola gerarchia di directory.
Tracciare i discendenti di Unix
Come ogni storia che risale a più di 40 anni, la storia di Unix e dei suoi discendenti è disordinata. Per semplificare le cose, possiamo approssimativamente raggruppare i discendenti di Unix in due gruppi.
Un gruppo di discendenti Unix è stato sviluppato nel mondo accademico. Il primo era BSD (Berkeley Software Distribution), un sistema operativo open source simile a Unix. BSD vive oggi attraverso FreeBSD, NetBSD e OpenBSD. NeXTStep era basato anche sul BSD originale, il Mac OS X di Apple era basato su NeXTStep e iOS era basato su Mac OS X. Molti altri sistemi operativi, incluso il sistema operativo Orbis utilizzato su PlayStation 4, derivano da tipi di sistemi operativi BSD..
Il progetto GNU di Richard Stallman è stato avviato anche come reazione ai termini di licenza del software Unix sempre più restrittivi di AT & T. MINIX era un sistema operativo simile a Unix creato per scopi didattici e Linux era ispirato a MINIX. Il Linux che conosciamo oggi è in realtà GNU / Linux, poiché è composto dal kernel Linux e da molte utility GNU. GNU / Linux non discende direttamente da BSD, ma discende dal design di Unix e ha le sue radici nel mondo accademico. Molti sistemi operativi oggi, inclusi Android, Chrome OS, Steam OS e una grande quantità di sistemi operativi integrati per dispositivi, sono basati su Linux.
D'altra parte, c'erano i sistemi operativi Unix commerciali. AT & T UNIX, SCO UnixWare, Sun Microsystems Solaris, HP-UX, IBM AIX, SGI IRIX - molte grandi aziende volevano creare e concedere in licenza le proprie versioni di Unix. Oggi non sono così comuni, ma alcuni di loro sono ancora là fuori.
Credito immagine: Wikimedia Commons
The Rise of DOS e Windows NT
Molti si aspettavano che Unix diventasse il sistema operativo standard del settore, ma alla fine i computer DOS e "PC compatibili con IBM" esplosero in popolarità. Il DOS di Microsoft è diventato il DOS di maggior successo di tutti. DOS non è mai stato basato su Unix, motivo per cui Windows utilizza una barra rovesciata per i percorsi dei file mentre tutto il resto utilizza una barra diretta. Questa decisione è stata presa nei primi giorni del DOS e le versioni successive di Windows l'hanno ereditata, proprio come BSD, Linux, Mac OS X e altri sistemi operativi simili a Unix hanno ereditato molti aspetti del design di Unix.
Windows 3.1, Windows 95, Windows 98 e Windows ME erano tutti basati su DOS sottostanti. Microsoft stava sviluppando un sistema operativo più moderno e stabile al momento, che battezzò Windows NT - per "Windows New Technology". Windows NT alla fine arrivò agli utenti regolari di computer come Windows XP, ma era disponibile per le aziende come Windows 2000 e Windows NT prima.
Tutti i sistemi operativi Microsoft sono basati sul kernel di Windows NT oggi. Windows 7, Windows 8, Windows RT, Windows Phone 8, Windows Server e il sistema operativo di Xbox One utilizzano tutti il kernel di Windows NT. A differenza della maggior parte degli altri sistemi operativi, Windows NT non è stato sviluppato come sistema operativo simile a Unix.
Microsoft non ha iniziato con una lavagna completamente pulita, ovviamente. Per mantenere la compatibilità con DOS e con il vecchio software Windows, Windows NT ha ereditato molte convenzioni DOS come lettere di unità, barre rovesciate per i percorsi dei file e barre in avanti per le opzioni della riga di comando.
Perchè importa
Hai mai guardato il terminale o il file system di Mac OS X e hai notato quanto fosse simile a quello di Linux e quanto fossero diversi da Windows? Ecco perché - sia Mac OSX che Linux sono sistemi operativi simili a Unix.
Conoscere questo frammento di cronologia ti aiuta a capire che cos'è un sistema operativo "simile a Unix" e perché così tanti sistemi operativi sembrano così simili tra loro mentre Windows sembra così diverso. Questo spiega perché il terminale su Mac OS X sarà così familiare a un geek di Linux, mentre Command Prompt e PowerShell su Windows sono così diversi dagli altri ambienti da riga di comando.
Questa è stata solo una breve storia che ti aiuterà a capire come siamo arrivati dove siamo oggi senza impantanarci nei dettagli. Se vuoi maggiori informazioni, puoi trovare interi libri sulla storia di Unix.
Immagine di credito: Peter Hamer su Flickr, Takuya Oikawa su Flickr, CJ Sorg su Flickr