b"\n_START_ARTICLE_\nMS-DOS\n_START_SECTION_\nStoria\n_START_PARAGRAPH_\nNell'ottobre del 1980 la IBM stava cercando un sistema operativo per il suo nuovo personal computer, il PC IBM e si rivolse alla Digital Research di Gary Kildall, gi\xc3\xa0 autore del CP/M che allora era lo standard per i microcomputer. I negoziati per\xc3\xb2 fallirono perch\xc3\xa9 la IBM offriva il pagamento di una licenza fissa di 250.000 dollari indipendentemente dal numero di copie del sistema operativo realizzate, mentre Digital Research voleva un accordo basato sul pagamento di una royalty per ogni singola copia realizzata._NEWLINE_Continuando la ricerca, la IBM chiese alla Microsoft di Bill Gates e Paul Allen -  che allora produceva principalmente linguaggi di programmazione come il Microsoft BASIC - la quale prese contatti con la Seattle Computer Products (SCP) 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 Gazelle, dei microcomputer che stava producendo, basati sull'8086 e sul bus S-100. Dopo una veloce revisione dei sorgenti, che consistevano in circa 4000 linee di codice assembly, il tutto fu mandato alla IBM per una valutazione._NEWLINE_La IBM rimase soddisfatta, quindi la Microsoft acquis\xc3\xac i diritti dell'86-DOS dalla SCP nel luglio 1981. Il mese dopo la prima versione di MS-DOS era sul mercato; IBM per\xc3\xb2, avendola sottoposta a un esteso controllo di qualit\xc3\xa0 e avendo trovato oltre 300 bug, ne riscrisse alcune parti e ne cambi\xc3\xb2 il nome in PC-DOS 1.0 e entrambe le versioni furono licenziate congiuntamente da Microsoft e da IBM. Le versioni successive furono licenziate separatamente, da Microsoft come MS-DOS e da IBM come PC-DOS, in genere in coincidenza con l'uscita sul mercato di una nuova linea di personal computer._NEWLINE_Inizialmente non era obbligatorio comprare una copia di MS-DOS insieme ai PC IBM ma si poteva scegliere fra alcuni sistemi operativi come il CP/M-86 (poi DR-DOS), l'UCSD p-System, l'IBM PC-DOS, lo XENIX (cio\xc3\xa8 lo UNIX di AT&T con licenza acquistata e riadattato dalla Microsoft per i microcomputer). Tuttavia il prezzo del CP/M era di 240 dollari, quello del p-System di poco meno, mentre l'MS-DOS costava 39,95 dollari, rendendolo una scelta praticamente preferibile in molti ambiti. La pratica di vendere l'MS-DOS e il PC-DOS solo insieme a un PC inizi\xc3\xb2 a partire dalla vendita degli AT/339, con la versione 3.0 del DOS._NEWLINE_Fino alla versione 3.1 di Microsoft Windows l'MS-DOS era il sistema operativo con il quale il computer si avviava e Windows veniva esplicitamente caricato dall'utente successivamente; a partire da Windows 95, il processo di avvio del sistema IBM-compatibile venne modificato in modo da caricare l'MS-DOS e, in automatico, Windows. Ci\xc3\xb2 venne fatto per mantenere la retrocompatibilit\xc3\xa0 con i programmi DOS, ma dando anche all'utente l'impressione di un ambiente totalmente grafico (viene visto in tal senso l'artificio di visualizzare una schermata grafica con il logo di Windows 95 durante l'avvio di MS-DOS)._NEWLINE_A differenza della linea di prodotti da Windows 95 a Windows Me, detta Win'9x (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 nuova linea Windows NT nacque sin dalla versione 3.1 non retrocompatibile, totalmente a 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\xc3\xb2 inglobare nulla del precedente sistema operativo). MS-DOS \xc3\xa8 stato reso definitivamente obsoleto con la nascita di Windows XP, prima versione della linea di prodotti NT orientata al mercato consumer. Oggi Windows fornisce un limitato sottosistema DOS (NTVDM) che per\xc3\xb2, a partire da Windows Vista non supporta neanche la modalit\xc3\xa0 a schermo intero necessaria per eseguire gran parte dei giochi per DOS. Pertanto, l'emulazione del vecchio sistema \xc3\xa8 demandata a programmi di terze parti di livello utente, il pi\xc3\xb9 noto dei quali \xc3\xa8 DOSBox._NEWLINE_Il 26 marzo 2014 Microsoft 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._NEWLINE_A fine 2018 gli stessi sorgenti condivisi 4 anni prima vengono caricati da Microsoft sul portale GitHub\n_START_SECTION_\nArchitettura\n_START_PARAGRAPH_\nCome praticamente tutti i sistemi operativi per home e personal computer del periodo, l'MS-DOS era un sistema operativo monoutente e monotask, cio\xc3\xa8 capace di far girare un solo programma alla volta. Il mercato svilupp\xc3\xb2, sfruttando una peculiarit\xc3\xa0 del meccanismo di esecuzione dei programmi di DOS, i cosiddetti TSR (Terminate and Stay Resident, termina e resta residente): programmi che, una volta caricati, restituivano il controllo alla shell senza per\xc3\xb2 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\xc3\xb2 consentiva una sia pur elementare simulazione di multitasking, anche se la pratica dimostr\xc3\xb2 che due o pi\xc3\xb9 TSR entravano spesso in conflitto o causavano instabilit\xc3\xa0 al sistema._NEWLINE_I principali limiti del 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\xc3\xa0 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._NEWLINE_Alla fine, la Microsoft fu costretta ad abbandonare l'MS-DOS e scrivere da zero una nuova famiglia di sistemi operativi, cio\xc3\xa8 le varie versioni di Windows 9x e NT._NEWLINE_Il codice eseguibile fondamentale del DOS era contenuto in due file dal nome IO.SYS e MSDOS.SYS. 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. MSDOS.SYS caricava a sua volta il COMMAND.COM, la shell interprete dei comandi. I file dovevano occupare le prime due posizioni nella File Allocation Table del disco ed essere contingui. Sul PC-DOS i file si chiamavano rispettivamente IBMBIO.COM e IBMDOS.COM ma svolgevano le medesime mansioni. Altri file di sistema rilevanti erano CONFIG.SYS e AUTOEXEC.BAT: il primo si occupava della configurazione dei dispositivi (periferiche) e delle applicazioni; il secondo, invece, era un eseguibile di tipo batch che gestiva i comandi automatici all'avvio del sistema. Tutti questi file di sistema si trovavano nel percorso radice.\n_START_SECTION_\nInterfaccia utente\n_START_PARAGRAPH_\nL'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."