MS-DOS

Da Wikipedia, l'enciclopedia libera.
Microsoft MS-DOS
Microsoft DOS.svg
MS-DOS.JPG
Schermata dell' MS-DOS
Sviluppatore Microsoft Corporation
Famiglia SO DOS
Modello del sorgente Closed source
Release iniziale 1.24 (giugno 1982)
Release corrente 8.0 (14 settembre 2000)
Tipo di kernel Kernel monolitico, 16 bit
Piattaforme supportate x86
Licenza Proprietario (MS-EULA)
Stadio di sviluppo Sviluppo interrotto dal 2000
Predecessore 86-DOS

MS-DOS (acronimo di "MicroSoft - Disk Operating System") è stato un sistema operativo commerciale della Microsoft Corporation dedicato ai personal computer con microprocessore x86.

Commercializzato dal giugno 1982 al 2000, Microsoft MS-DOS è il primo di una lunga serie di sistemi operativi commerciali della maggiore software house del pianeta, negli anni 80 era detenente oltre il 90% del mercato mondiale dei sistemi operativi[senza fonte].

Fino all'avvento di Microsoft Windows 95 (della stessa Microsoft Corporation) rilasciato il 24 agosto 1995, MS-DOS è stato il sistema operativo per computer più diffuso al mondo.

Storia[modifica | modifica sorgente]

Verso l'ottobre del 1980 la IBM stava cercando un sistema operativo per il suo nuovo prodotto, il PC IBM prossimo al lancio. Si rivolse alla Digital Research di Gary Kildall, l'autore del CP/M che allora era lo standard per i microcomputer; ma l'affare andò in fumo poiché Kildall rifiutò di firmare l'accordo di non divulgazione del codice.

Continuando la ricerca, fece domanda alla Microsoft di Bill Gates e Paul Allen che allora produceva quasi solo linguaggi (il Microsoft BASIC). I due, davanti all'occasione che si profilava loro, non esitarono a contattare la Seattle Computer Products che pochi mesi prima aveva scritto un clone a 16 bit del CP/M chiamato QDOS (Quick & Dirty Operating System), poi distribuito come 86-DOS, per i microcomputer che stava producendo, basati sull'8086 e sul bus S-100, i "Gazelle". Dopo una veloce revisione dei sorgenti, che consistevano in circa 4000 linee di codice assembly, il tutto fu mandato alla IBM per una valutazione.

La IBM rimase soddisfatta e l'affare andò in porto. La Microsoft acquisì i diritti dell'86-DOS nel luglio 1981 e il mese dopo la prima versione di MS-DOS era sul mercato. IBM però, avendola sottoposta ad un esteso controllo di qualità ed avendo trovato oltre 300 bug, ne riscrisse alcune parti: per questo motivo tale versione portò il nome di IBM PC-DOS 1.0 e fu licenziata congiuntamente da Microsoft e da IBM. Le versioni successive furono licenziate separatamente o da Microsoft (che le marcava come MS-DOS) o da IBM (con il nome di PC-DOS e in genere in coincidenza con l'uscita sul mercato di una nuova linea di personal computer).

Inizialmente non era obbligatorio comperare una copia di MS-DOS insieme ai PC IBM, ma si poteva scegliere fra 3 sistemi operativi: il CP/M-86, l'UCSD p-System e l'MS-DOS. Tuttavia il prezzo del CP/M era di 240 dollari, quello del p-System di poco meno, e l'MS-DOS costava 39,95 dollari, rendendolo una scelta praticamente obbligata per un hobbysta. La pratica di vendere l'MS-DOS e il PC-DOS solo insieme ad un PC iniziò a partire dalla vendita degli AT/339, con la versione 3.0 del DOS.

Fino alla versione 3.1 di Microsoft Windows, l'MS-DOS era il sistema operativo con il quale il computer partiva, e Windows veniva esplicitamente caricato dall'utente come uno strato software sovrapposto. A partire da Windows 95, il processo di boot del sistema IBM-compatibile è stato modificato in modo da caricare l'MS-DOS e, in automatico, Windows. Ciò è stato fatto per consentire di mantenere la retrocompatibilità con i vecchi programmi DOS, ma dando all'utente l'impressione di un ambiente totalmente grafico (in tal senso va visto l'artificio di visualizzare una schermata grafica con il logo di Windows 95 durante l'avvio di MS-DOS).

A differenza della linea di prodotti da 95 a ME, detta Win9x, basata su MS-DOS a 16 bit, ma con un numero di componenti via via maggiore a 32 bit e non basati su DOS, la linea Windows NT nasceva sin dalla versione 3.1 non retrocompatibile, totalmente 32 bit e priva di reale supporto MS-DOS (il prompt dei comandi fornito era in effetti un applicativo Win32 che emulava una console e i principali comandi DOS, senza però inglobare nulla del precedente sistema operativo). MS-DOS è stato reso definitivamente obsoleto con la nascita di NT4, prima versione della linea di prodotti NT orientata al mercato consumer. Oggi Windows fornisce un limitato sottosistema DOS (NTVDM) che però, a partire da Windows Vista non supporta neanche la modalità schermo intero necessaria per eseguire la gran parte dei giochi per DOS. Pertanto, l'emulazione del vecchio sistema è demandata a programmi di terze parti di livello utente, il più noto dei quali è DOSBox.

Il 26 marzo 2014 Micosoft concede al Computer History Museum di pubblicare, sotto una licenza ad uso esclusivamente consultativo e non commerciale, i sorgenti delle versioni 1.1 e 2.0 di MS-DOS [1].

Descrizione[modifica | modifica sorgente]

Architettura[modifica | modifica sorgente]

Come praticamente tutti i sistemi operativi per home e personal computer del periodo, l'MS-DOS era un sistema operativo monoutente e monotask, cioè capace di far girare un solo programma alla volta. Il mercato sviluppò, sfruttando una peculiarità del meccanismo di esecuzione dei programmi di DOS, i cosiddetti TSR (Terminate and Stay Resident, termina e resta residente): programmi che una volta caricati, il controllo alla shell senza però liberare la memoria allocata e, sovente, assumendo il controllo della tastiera o di un altro dispositivo, in modo da poter essere in qualche modo invocati dall'utente. Ciò consentiva una sia pur elementare simulazione di multitasking, anche se la pratica dimostrò che due o più TSR entravano spesso in conflitto o causavano instabilità al sistema.

I principali limiti di DOS sono stati la limitazione a 640KB di RAM, la mancanza di supporto per la rientranza, l'architettura esclusivamente a 16 bit e il fatto che ogni processo una volta avviato avesse il controllo totale del sistema. Tali limitazioni erano dovute a scelte progettuali, basate sulle limitazioni del primo PC IBM; essendo strutturali, questi limiti non furono in seguito superabili. Divenuti presto evidenti per la rapidissima evoluzione tecnologica di quegli anni, questi limiti vennero poi aggirati con stratagemmi software come i gestori di memoria EMS e XMS, e i cosiddetti DOS extender che gestivano il funzionamento a 32 bit in modalità protetta, che MS-DOS non poteva supportare. Tuttavia non si trattava di modifiche strutturali al SO: in ogni caso la gestione del file system e la risposta agli interrupt restavano comunque in mano al vecchio MS-DOS e soffrivano dei suoi limiti.

Alla fine, la Microsoft fu costretta ad abbandonare l'MS-DOS e scrivere da zero una nuova famiglia di sistemi operativi, cioè le varie versioni di Windows 9x e NT.

Il codice eseguibile fondamentale del DOS era contenuto in due file dal nome IBMBIO e IBMDOS. Il primo conteneva le routine di servizio degli interrupt e la gestione delle periferiche fisiche e caricava il secondo, che conteneva il gestore di periferiche logiche e il gestore del file system FAT. IBMDOS caricava a sua volta il COMMAND.COM, la shell interprete dei comandi.

Interfaccia utente[modifica | modifica sorgente]

L'interfaccia standard di MS-DOS, un'interfaccia a riga di comando, era una shell (chiamata command), come su tutti i sistemi dell'epoca. In seguito divennero disponibili altre interfacce utente, basate su menu testuali (come, ad esempio, Norton Commander) o grafiche, come il GEM e le prime versioni di Microsoft Windows fino alla 3.11.

Versioni[modifica | modifica sorgente]

Versione Data di rilascio Note
Microsoft MS-DOS 1.24 giugno 1982 come il PC DOS 1.10
Microsoft MS-DOS 1.25 luglio 1982 primo rilascio non IBM del PC DOS: la storia dell'MS-DOS propriamente detto inizia da qui
Microsoft MS-DOS 2.01 maggio 1983 supporto iniziale per l'internazionalizzazione (comando COUNTRY)
Microsoft MS-DOS 2.11 dicembre 1983 una via di mezzo tra MS-DOS 2.01 e PC DOS 2.10
Microsoft MS-DOS 2.12 1983 versione speciale per TI pro
Microsoft MS-DOS 3.05 novembre 1984 primo rilascio non IBM di PC DOS versione 3
Microsoft MS-DOS 3.25 ottobre 1985 esteso il supporto alle lingue straniere
Microsoft MS-DOS 4.0 aprile 1986 lanciato solo in Europa; introdotto il multitasking; molto instabile e pieno di bug viene ritirato dal mercato poco tempo dopo
Microsoft MS-DOS 3.31 novembre 1987 supporto per partizioni maggiori di 32 MB; versioni diverse da parte di vari OEM
Microsoft MS-DOS 2.11R 1988 versione bootabile da ROM per i PC Tandy
Microsoft MS-DOS 4.01 dicembre 1988 corregge molti bug della catastrofica versione 4.0 ma è ancora instabile
Microsoft MS-DOS 3.21R.85 settembre 1989 ROM DOS, supporta il Flash file system per i portatili
Microsoft MS-DOS 3.3R 1990 ROM DOS, versione per i portatili TI
Microsoft MS-DOS 5.0 giugno 1991 introdotto l'uso della memoria alta; possibilità di usare fino a 8 hard disk; supporto ai floppy disk da 2,88 MB; versione decisamente più stabile e robusta delle precedenti
Microsoft MS-DOS V febbraio 1993 versione per il mercato giapponese con supporto per i caratteri Kanji a 16 bit
Microsoft MS-DOS 6.0 marzo 1993 compressione del disco on the fly (Doublespace); configurazioni multiple in AUTOEXEC.BAT e CONFIG.SYS
Microsoft MS-DOS 6.20 settembre 1993 Doublespace riscritto per perdite di dati che occasionalmente causava
Microsoft MS-DOS 6.21 febbraio 1994 Doublespace rimosso dopo che la Stac Electronics aveva vinto la causa per violazione di copyright
Microsoft MS-DOS 6.22 maggio 1994 nuovo software di compressione del disco (Drivespace); ultima versione di DOS stand-alone
Microsoft MS-DOS 7.0 agosto 1995 incorporata in Windows 95
Microsoft MS-DOS 7.10 agosto 1996 incorporata in Windows 95B OSR2 e Windows 98
Microsoft MS-DOS 8.0 settembre 2000 ultima versione di MS-DOS; incorporata in Windows ME
Microsoft MS-DOS 31 dicembre 2001 Fine del supporto

Cloni[modifica | modifica sorgente]

Screenshot di FreeGEM

Dato il grande successo e la longevità del DOS sarebbe stato ben strano se nessuno avesse cercato di emularlo. E in effetti ci sono moltissimi sistemi operativi compatibili con varie versioni dell'MS-DOS o che cercano di estenderne le funzioni, alcuni commerciali, alcuni gratuiti, altri addirittura open source.

Cloni commerciali:

  • MultiUserDOS-7 Gold
  • DR Multiuser-DOS
  • SuperDOS

Cloni:

Cloni gratuiti:

  • OpenDOS
  • DOS-C
  • TR-DOS

Cloni open source:

Comandi[modifica | modifica sorgente]

Voci correlate[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

Altri progetti[modifica | modifica sorgente]