Unix v4 è tornato. Non come nostalgia da museo polveroso ma come oggetto vivo, avviabile, osservabile. Un sistema operativo scritto quando la parola software non aveva ancora perso il suo significato letterale. Un kernel di circa 27 kilobyte, recuperato da un nastro magnetico degli anni Settanta trovato all’università dello Utah, riletto bit per bit grazie a una combinazione di competenza, ostinazione e rispetto quasi religioso per la storia dell’informatica. Al Kossow del Computer History Museum ha fatto ciò che molti davano per improbabile e ha riportato alla luce la prima versione di Unix in cui il kernel venne scritto in C. Non una curiosità per collezionisti ma un punto di origine. Qui nasce davvero l’idea moderna di sistema operativo portabile, leggibile, replicabile.

Il contesto conta più del recupero tecnico, anche se il recupero tecnico è affascinante. Il nastro era un nine track tape, mezzo preistorico per chi oggi considera arcaico perfino un hard disk meccanico. I dati non sono stati copiati nel modo tradizionale. Sono stati campionati a livello di flusso magnetico, come fa Greaseweazle con i floppy, usando readtape di Len Shustek. Prima si cattura il segnale fisico, poi si ricostruisce il dato logico. È un approccio che oggi definiremmo forense. All’epoca era semplicemente necessario. Il risultato è un file enorme, oltre un gigabyte, per rappresentare un contenuto che stava in circa 40 megabyte. Ridondanza come strumento di sopravvivenza. Due blocchi danneggiati, ricostruiti grazie alla coerenza interna del codice. Già questo dovrebbe far riflettere chi oggi parla di resilienza senza sapere cosa significhi davvero.

Unix v4 ora gira in SimH. C’è chi lo ha fatto partire perfino sotto IRIX. È piccolo. È leggibile. È spaventosamente diretto. Circa 55.000 linee di codice, 25.000 in C, meno di mille linee di commenti. Qui entra in gioco il mito dei Real Programmers, quelli che non commentano perché il codice è ovvio. Una battuta che oggi fa sorridere ma che nasconde una verità più scomoda. All’epoca il codice era davvero comprensibile perché l’architettura mentale del sistema stava tutta nella testa di due persone. Dennis Ritchie e Ken Thompson non scrivevano per team distribuiti, compliance, audit o onboarding. Scrivevano per far funzionare una macchina domani mattina.

Per capire Unix v4 bisogna tornare ancora più indietro. Il primo Unix, lo zero, nasce nel 1969 su un PDP 7. Un computer a 18 bit, quando il byte da otto bit non era ancora uno standard ma un’opinione. Thompson lo scrive in assembly, a mano, per poter far girare Space Travel, un gioco di simulazione spaziale. Un sistema operativo come sottoprodotto di un gioco. Oggi sarebbe un post motivazionale su LinkedIn. All’epoca era semplicemente ingegneria creativa applicata a un computer inutilizzato. Il PDP 11 arriva poco dopo. Sedici bit. Un disco RS11 da mezzo megabyte. Unix viene riscritto. Nasce la prima edizione. Tutto in assembly. Poi Unix v2, v3. Le pipe compaiono nel 1972. Il linguaggio C prende forma. Unix diventa lentamente qualcosa di più di un esperimento.

Unix v4 è il punto di svolta. È qui che il kernel viene riscritto in C. Non per eleganza accademica ma per necessità pratica. La portabilità non era una parola di marketing, era una via di fuga dall’hardware. Unix v4 gira solo su PDP 11 45, una macchina più potente. Ma l’idea è chiara. Separare il sistema dalla macchina. Astrarre senza perdere controllo. È un concetto che oggi tutti dicono di applicare e che pochissimi capiscono davvero. Qui non ci sono layer superflui. Ogni astrazione ha un costo visibile. Ogni byte conta.

Molte stranezze di Unix moderno nascono da questi vincoli. La struttura delle directory è l’esempio più citato e più frainteso. Un solo disco RK05 da 1,5 megabyte. Poi arriva il secondo. Le home directory finiscono su /usr. User, non Unix system resources come qualcuno oggi crede. Dentro /usr finiscono anche i binari, perché sono i programmi degli utenti Ken e Dennis. Poi nasce il problema di montare il secondo disco quando il comando mount sta proprio su quel disco. Soluzione. /sbin sul disco principale. Niente filosofia. Niente design pattern. Solo un problema concreto risolto nel modo più diretto possibile. Cinquant’anni dopo discutiamo ancora di usr merge come se fosse una questione teologica.

Unix v4 permette di osservare tutto questo allo stato puro. Prima che la mitologia prenda il sopravvento. Prima che i nomi brevi diventino dogmi. Prima che l’essenzialità venga scambiata per austerità. Unix non nasce semplice per virtù morale. Nasce semplice perché non può permettersi di essere complesso. Questo è un dettaglio che molti evangelisti moderni dimenticano. La semplicità come conseguenza di limiti è molto diversa dalla semplicità come scelta estetica.

La scoperta del nastro allo Utah e il suo recupero non aggiungono solo una versione mancante alla cronologia. Aggiungono continuità. Rendono visibile il percorso. Dal codice scritto a mano su un PDP 7 alla riscrittura in C su PDP 11. Dal laboratorio Bell a un Internet Archive da cui chiunque può scaricare e avviare il sistema. Non è archeologia sterile. È una lezione di metodo. Unix non è mai stato pensato per essere eterno. Doveva essere utile. Migliorabile. Rifattorizzabile. Questa attitudine continua fino alla Tenth Edition e poi esplode in Plan 9, dove molte scelte storiche vengono finalmente rimesse in discussione. Nomi inclusi.

Nel frattempo Unix v7 esce dal laboratorio e diventa virale. Università, aziende, cloni, riscritture. Il libro di Lions trasforma il codice in testo sacro. Il famoso commento “non siete tenuti a capirlo” diventa simbolo di un’epoca in cui l’onestà tecnica era ancora permessa. Da lì in poi Unix cresce. Si gonfia. Stratifica compatibilità, eccezioni, compromessi. Oggi Linux e Unix like sono milioni di volte più grandi. I percorsi di directory sono venerati come tradizione. Pochi ricordano che erano soluzioni temporanee a problemi di spazio su disco.

Il recupero di Unix v4 è uno schiaffo gentile ma deciso alla nostra idea contemporanea di progresso. Dimostra che molto di ciò che oggi chiamiamo complessità è accumulo non digerito. Dimostra che un kernel in C scritto da due persone può durare mezzo secolo come idea, se non come codice. Dimostra che la vera innovazione non sta negli strati ma nelle scelte fondanti. Scrivere meno. Capire di più. Accettare i limiti invece di nasconderli dietro astrazioni costose.

Unix v4 oggi si può avviare in un emulatore. Ci mette pochi secondi. Non fa molto. Non ha bisogno di fare molto. È una macchina del tempo concettuale. Un promemoria per chi progetta sistemi distribuiti, piattaforme cloud, intelligenze artificiali. La portabilità nasce dal controllo. La semplicità nasce dalla necessità. La longevità nasce dalla chiarezza. Tutto il resto è rumore.