Fino a metà anni ’90, le varie versioni di Windows destinate agli utenti consumer erano essenzialmente “ambienti operativi” e non sistemi operativi veri e propri. Gli utenti avevano infatti la possibilità di disporre il caricamento dell’interfaccia grafica (GUI) al di sopra del kernel di MS-DOS, sistema operativo che in casa Microsoft fungeva da base per qualsiasi altro componente software. Quando la società di Redmond iniziò a utilizzare il lavoro fatto con la famiglia dei sistemi Windows NT anche per le versioni consumer della piattaforma, Jim Hall – all’epoca ancora studente accademico – propose il progetto FreeDOS.
FreeDOS (Free Disk Operating System) era ed è ancora oggi un sistema operativo open source, compatibile con MS-DOS (oltre che un software libero). Nato a fine giugno 1994, ha mantenuto viva l’eredità dei sistemi operativi DOS nell’era moderna, offrendo una piattaforma libera per l’esecuzione di software legacy e per l’uso in ambienti specifici.
Cos’è FreeDOS e perché resta utilizzato ancora oggi, a 30 anni di distanza
A fine agosto 1995, Microsoft avrebbe rilasciato la versione finale di Windows 95, il primo sistema operativo ibrido 16/32 bit a interfaccia grafica della famiglia (la storia di Windows 95).
Hall, preoccupato per la possibile scomparsa del DOS, decise di creare una versione libera e open source del sistema operativo. Avvalendosi della collaborazione di tanti sviluppatori da tutto il mondo, riuscì a ricreare le funzionalità di MS-DOS e aggiungere nuove caratteristiche.
Il kernel di FreeDOS è il cuore del sistema operativo. Gestisce le risorse hardware, esegue i programmi e fornisce i servizi di base necessari per il funzionamento del sistema. È inoltre è compatibile con le chiamate di sistema MS-DOS, garantendo che i programmi scritti per il sistema Microsoft funzionino senza modifiche.
Command.com è l’interprete dei comandi di FreeDOS, equivalente all’analogo file di MS-DOS. Fornisce un’interfaccia a riga di comando per l’interazione con il sistema, permettendo agli utenti di eseguire comandi, lanciare programmi e gestire i file.
Un progetto importante ancora oggi
Il “viaggio” di FreeDOS inizia, come detto, a fine giugno 1994 ma soltanto nel 1998 fu rilasciata la prima versione beta realmente “utilizzabile”. La prima release definitiva (1.0) risale al mese di settembre 2016, la versione 1.1 a gennaio 2012, la 1.2 a dicembre 2016. Quella più recente e aggiornata risale addirittura del 20 febbraio 2022 (FreeDOS 1.3).
FreeDOS gioca un ruolo cruciale nella conservazione del software DOS storico, permettendo l’esecuzione di applicazioni che altrimenti sarebbero inutilizzabili sui sistemi operativi moderni (o quasi del tutto incompatibili). Molti sistemi industriali e apparecchiature specializzate continuano a utilizzare software basato su DOS: FreeDOS offre una soluzione gratuita e affidabile per questi ambienti.
Oltre a supportare i file system FAT, lo stack TCP/IP e le connessione di rete, FreeDOS integra un kernel leggero ed efficiente. Per questo motivo, il sistema è spesso installato sulle macchine preassemblate vendute senza sistema operativo (per risparmiare sui costi delle licenze di Windows e lasciare gli utenti liberi di installare soluzioni come GNU/Linux). Inoltre, è la prima scelta per gestire l’installazione degli aggiornamenti del firmware (BIOS/UEFI).
FreeDOS mantiene una comunità attiva di sviluppatori e utenti che contribuiscono al suo miglioramento continuo. Il progetto accoglie contributi sotto forma di codice, documentazione, test e supporto.
Come è stato realizzato FreeDOS
Soltanto a fine aprile 2024, Microsoft ha rilasciato MS-DOS 4.0 in versione open source. All’inizio degli anni ’90, MS-DOS era un software completamente proprietario che non mostrava i dettagli sul suo funzionamento.
Così, Hall e i collaboratori che lo hanno aiutato nell’impresa, si sono basati sulla documentazione disponibile (compresa quella relativa alle chiamate a basso livello) e su un’intensa attività di reverse engineering. Eseguendo programmi DOS e analizzando le loro interazioni con il sistema operativo, gli sviluppatori di FreeDOS sono risaliti alle modalità con cui MS-DOS gestisce le chiamate di sistema e gli interrupt.
Rilasciato sotto licenza libera (GPL), FreeDOS ha immediatamente raccolto grande interesse tra gli sviluppatori.