Microsoft ha divulgato il codice sorgente della versione iniziale di DOS, considerato il precursore di Windows.

Leggi in app

Microsoft ha divulgato il codice sorgente della versione iniziale di DOS, considerato il precursore di Windows.0 Microsoft ha divulgato il codice sorgente della versione iniziale di DOS, considerato il precursore di Windows. 2

Microsoft ha reso disponibile su GitHub il codice sorgente di 86-DOS, un sistema operativo creato nel 1980 da Tim Paterson, progettato per computer dotati di microprocessore Intel 8086, che successivamente l’azienda co-fondata da Bill Gates ha acquisito, modificato e rinominato in MS-DOS, diventato fondamentale per il successo dei personal computer.

Tra il 2018 e il 2024, l’azienda di Redmond ha pubblicato le versioni dalla 1.25 alla 4.0, ma non si era mai spinta così indietro nel tempo, restituendo alla memoria collettiva le origini di un’impresa che, nel frattempo, è diventata un gigante con un fatturato annuo di 280 miliardi di dollari (quasi 240 miliardi di euro) e che impiega oltre 220mila persone a livello globale.

Può essere considerato il progenitore del MS-DOS e del PC-DOS e, da questo punto di vista, rappresenta il sistema operativo più significativo nella storia dei computer.

Cosa è MS-DOS

Le lettere MS indicano Microsoft, mentre la sigla DOS sta per Disk Operating System, cioè sistema operativo su disco.

Si tratta di un sistema operativo testuale, a riga di comando, ampiamente utilizzato negli anni Ottanta e nei primi anni Novanta sui personal computer IBM e compatibili, prima che Windows – al suo debutto completamente dipendente dal MS-DOS – apparisse nel 1985.

Privo di interfaccia grafica (finestra e icone), il DOS fungeva da accesso ai computer che, all’epoca, erano macchine con risorse limitate, senza disco rigido e con poca Ram, tipicamente 16 Kilobyte, una quantità così esigua da richiedere un paragone forzato per rendere l’idea. Oggi, un pc con Windows necessita indicativamente di 4 Gigabyte di Ram per operare. Questo implica che un computer attuale richiede 262mila volte più Ram rispetto a uno dei primi anni Ottanta.

A chi è destinato 86-DOS

Attualmente, l’86-DOS è principalmente rivolto a ricercatori, appassionati di storia dell’informatica e sviluppatori.

Si tratta di un reperto di archeologia del software che permette di ricostruire i primi passi del personal computing e ha un notevole valore educativo.

Gli sviluppatori possono analizzare i listati originali scritti in linguaggio assembly per comprendere come venisse realizzato il software in condizioni di hardware limitato, una pratica che richiedeva una disciplina ingegneristica e un’ottimizzazione del codice oggi raramente necessarie.

Esaminare i documenti forniti da Microsoft aiuta a comprendere le motivazioni dietro molte scelte architetturali che sono rimaste invariate per decenni e che continuano a influenzare i sistemi operativi moderni.

Oltre all’aspetto tecnico, l’86-DOS ha una certa rilevanza per chi si occupa di cyber security, poiché consente di approfondire le vulnerabilità strutturali e i limiti progettuali iniziali e, non da meno, il codice ha un valore museale considerando che alcune annotazioni di Tim Paterson saranno esposte all’Interim Computer Museum di Tukwila, nello stato di Washington.

L’evoluzione dello sviluppo del software

Nei primi anni Ottanta, i programmatori si confrontavano con i limiti fisici delle macchine, con processi manuali e con codice di basso livello. Sistemi come l’86-DOS erano scritti quasi interamente in linguaggio assembly e lo sviluppo era un’attività rigorosa che, in assenza di ambienti integrati, costringeva i programmatori a scrivere codice che veniva poi spesso analizzato su carta e successivamente corretto.

L’interfaccia a riga di comando e l’assenza di gestioni multitasking e multiutente complicavano ulteriormente la situazione, rendendo la programmazione meno fluida rispetto a quanto avviene oggi.

Attualmente, lo sviluppo software è affidato a linguaggi e ambienti di programmazione avanzati che beneficiano del supporto delle intelligenze artificiali, le quali completano intere righe di codice, suggeriscono miglioramenti, testano soluzioni e, non da meno, gli sviluppatori possono collaborare in tempo reale con agenti IA, utili in numerosi contesti.

Il linguaggio assembly si usa ancora

Il linguaggio assembly è ancora utilizzato quando è necessario avere il massimo controllo sull’hardware o quando sono richiesti tempi di risposta rigorosi, come avviene, ad esempio, per i microcontrollori, dispositivi progettati per eseguire un singolo compito con un chip, poca Ram, spazio limitato per l’esecuzione di software e periferiche integrate come timer o porte seriali.

Un tempo l’assembly era un punto di riferimento, oggi rappresenta una nicchia altamente specializzata.

I commenti sono chiusi.