Unix is not Unix
Neo e il consigliere Hamann scendono fino al livello delle macchine di Zion.
Il consigliere Hamann: Vedi, praticamente nessuno scende fin quaggiù, a meno che, ovviamente, non ci sia un problema.
La gente è fatta così: a nessuno importa come le cose funzionino, fintantoché funzionano… A me piace venire qua sotto. Mi piace ricordare che la città sopravvive grazie a queste macchine … Ci sono un sacco di cose che non capisco. La vedi quella macchina? Deve avere a che fare con il riciclo dell’acqua. Ma non ho assolutamente idea di come funzioni. Però ho assolutamente presente il perché sia importante che funzioni.
(Matrix Reloaded, 2003)
“A me piace venire qua sotto”
Qualche tempo fa le colleghe del marketing mi hanno chiesto di scrivere un breve articolo sul sistema operativo Linux. Almeno, così mi pare…
O forse sono stato io a proporlo a loro? Chissà, probabilmente è andata proprio così…
Infatti, “a me piace venire qua sotto”, anche se capisco che, in genere, alle persone poco importa sapere cosa ci sia al livello delle macchine, quale logica le faccia funzionare. A parte il fatto che, come abbiamo visto qualche tempo fa, le macchine non si sa più bene dove stiano e cosa siano…
Ok, però anche all’epoca del cloud possiamo pensare che le macchine calcolatrici siano fatte di elettronica e di ferraglia, magari virtuale. Il sistema operativo è la logica che “anima” questi pezzi di elettronica e di ferraglia facendo in modo che programmi di livello superiore possano compiere le loro funzioni.
Per questo mi è parso bene spendere qualche parola per il sistema operativo Ubuntu GNU/Linux che anima la ferraglia che fa funzionare il nostro 4uattro e le funzionalità remote che sono innescate dalle nostre splendide app (forShop e forWare).
Prima di dire qualcosa a riguardo di Ubuntu GNU/Linux dovremmo spiegare il motivo di un nome così complicato.
Leggiamolo da destra a sinistra.
Linux è il cuore del sistema operativo, il nucleo interno, la logica che mette a disposizione tutte le funzioni di livello base per gestire le componenti di un “calcolatore”: unità di calcolo, memorie, dispositivi vari.
GNU è lo strato logico che ricopre il nucleo e fornisce tutti i programmi applicativi per interagire con il nucleo e, tramite il nucleo, con la macchina. Questi programmi applicativi possono svolgere funzioni semplici o molto complicate; alcuni di essi sono a loro volta la base che permette ad altri applicativi di funzionare. Pensiamo ad esempio ai linguaggi di programmazione: sono applicativi che permettono di costruire applicativi che poggiano su di loro.
Ubuntu è la specifica combinazione di Linux e GNU creata e fornita dalla Canonical Ltd Ubuntu Foundation. Le combinazioni di GNU e Linux sono centinaia (migliaia? provate a fare un giro su Distrowatch). Noi abbiamo scelto Ubuntu per la solidità di Canonical e per la politica degli aggiornamenti orientati alla sicurezza, alla correzione dei difetti e all’offerta di nuova funzionalità.
Unix e diversi
L’idea di strutturare il sistema operativo come un nucleo di funzioni sulle quali sovrapporre altri strati di funzioni più vicine all’utilizzatore umano, oppure l’idea di pensare ogni elemento gestito dal sistema operativo come un flusso di caratteri, e di organizzare i flussi di dati in un file system gerarchico ad albero, non è originale di Linux e di GNU.
In effetti Linux fu la progettazione ex-novo di un nucleo di sistema operativo che replicasse le funzionalità del nucleo di un altro sistema operativo, Minix. Ma a sua volta Minix si ispirava profondamente a un altro sistema operativo, Unix.
Così arriviamo a intravedere lo spettro che si aggira nella maggior parte dei server del mondo…
Dal canto suo anche GNU prende ispirazione da Unix, a partire dal suo stesso nome, che è un acronimo ricorsivo: GNU’s Not Unix. L’idea era quella di creare un clone di Unix completo di nucleo e programmi applicativi, ma con il passare degli anni il progetto GNU si è combinato assai bene con il nucleo fornito da Linux. A sua volta GNU ha fornito i programmi applicativi di base (e non solo di base) al nucleo Linux per comporre quel sistema operativo completo che è appunto GNU/Linux.
Una storia piuttosto lunga
Non possiamo dire che Unix, di suo, sia il sistema operativo che funziona sulla maggior parte dei server del mondo. Anche perché, per quel che ne so, ad oggi l’unico prodotto commerciale che si chiami Unix è UnixWare 7 di Xinuos: ma si tratta di un prodotto non estremamente diffuso (anche se probabilmente è l’unico rimasto a potersi chiamare “Unix” a livello commerciale).
È però assolutamente vero che lo spettro di Unix nelle sue molteplici incarnazioni è certamente presente sulla maggioranza dei server mondiali.
C’è questo grafico, disponibile su Wikipedia, che mostra l’albero genealogico della famiglia Unix.
Come si può vedere sulla sinistra Minix e GNU/Linux sono membri adottati della famiglia, in quanto non hanno attinto alcuna riga di codice da altri progetti Unix. Resta il fatto che il solo GNU/Linux rappresenta l’assoluta maggioranza dei sistemi di tipo Unix installata sui server mondiali.
Gli altri sistemi operativi di tipo Unix sono tutti realmente nati da costole del capostipite che vide la luce nel 1969.
Potete anche vedere come i grandi nomi del mercato informatico propongono una propria versione di Unix: AIX di IBM, HP-UX di Hewlett-Packard, MacOS di Apple (chi l’avrebbe mai detto?), Solaris di Oracle. E Microsoft? Dal 1979 al 1987 Microsoft ebbe il suo Unix, che si chiamò Xenix. In seguito perse interesse nei confronti di quel prodotto. Però è da qualche tempo che Microsoft propone nei sistemi Windows 10 e 11 un ambiente software (WSL) per eseguire GNU/Linux accanto ai normali programmi per Windows.
Ho preparato una versione Wallysoft del diagramma. Sono evidenziate le “versioni” di Unix con le quali abbiamo avuto a che fare, a partire da Unisoft Uniplus+ System III che usavamo sulle innovative Apple Lisa all’inizio degli anni ’80…
System III, System V sui Lisa e poi System V sui 3B2 di AT&T, SCO Xenix, SCO Unix e poi SCO OpenServer e UnixWare sulle macchine a processore Intel (dagli Olivetti M28 ai potenti server Compaq), AIX sui server IBM e HP-UX su quelli Hewlett-Packard, poi l’epoca d’oro degli X-Server Apple e quindi Ubuntu GNU/Linux: la storia di Unix è lunga, ma anche l’esperienza di Wallysoft con i sistemi di tipo Unix viene da piuttosto lontano.
Che le cose funzionino!
A differenza del consigliere Hamann noi di Wallysoft sappiamo come funzionano le cose qua sotto. E a volte veniamo qua sotto per controllare che le cose funzionino e per sistemare quello che non funziona. Normalmente voi neppure ve ne accorgete (certo, è estremamente importante che non ve ne accorgiate!).
Abbiamo assolutamente presente il perché sia importante che le cose qui sotto funzionino e sappiamo dare il contributo indispensabile a che funzionino.
Detto questo, posso aggiungere che, anche solo per fare un giro, a me, personalmente, “piace venire qua sotto”.
Stefano Deponti
Scrivi un commento