Disk operating system
# Disk operating system

Disk operating system (DOS, pronuncia italiana "dòs"), ovvero "sistema operativo a disco", è un tipo di sistema operativo per computer capace di gestire le memorie di massa ad accesso casuale, tipicamente le unità a dischi, e a volte memorizzato esso stesso su disco.

Il nome si riferisce a un particolare tipo di software capace di gestire i dispositivi di memoria secondaria come dischetti o dischi rigidi e le informazioni in essi memorizzate, ad esempio mediante l'utilizzo di file system per organizzare i file. Spesso però con disk operating system ci si riferisce all'intero sistema operativo, se viene caricato da un disco e supporta l'astrazione e la gestione delle unità a disco.

Uno dei primi esempi è il DOS/360 dei mainframe IBM.

In particolare fu chiamata DOS una famiglia di sistemi operativi che girava sui PC IBM basati sui processori Intel e sulla folta schiera di macchine compatibili; qualsiasi DOS di questa famiglia veniva generalmente indicato come DOS.

L'originale DOS fu il QDOS, che divenne in seguito 86-DOS quando fu commercializzato come sistema operativo per i computer di Seattle Computer Products e poi in seguito MS-DOS quando fu acquistato da Microsoft. Microsoft lo concesse in licenza a IBM che lo distribuì come PC-DOS.

Digital Research produsse una variante del suo CP/M compatibile con il DOS di IBM/Microsoft che mise in vendita come DR-DOS. Esiste anche una versione FOSS denominata FreeDOS.

## Storia

Agli albori dell'era informatica, i computer non avevano unità a dischi: i dati erano memorizzati su schede e nastri perforati, nastri magnetici, memorie a tamburo e a linea di ritardo. I primi microcomputer usavano i nastri di carta (come l'Altair 8800) oppure comuni cassette musicali (come il Datapoint 2200), ma non mancavano casi in cui il computer non utilizzasse nessun tipo di supporto di memorizzazione: in questo caso il programma e i dati venivano inseriti ricorrendo a un pannello frontale su cui erano presenti degli interruttori che inserivano i valori direttamente nella memoria del calcolatore oppure tramite dei terminali, spesso controllati da un interprete BASIC residente in ROM. Quando l'alimentazione veniva tolta, i dati elaborati dal programma venivano persi.

Il sistema operativo caricato era contenuto nella memoria del computer: essendo questa all'epoca molto cara, la sua quantità era limitata, per cui il sistema operativo, per poter essere ospitato in così poco spazio, era anch'esso limitato nelle funzionalità, generalmente quelle preposte alla gestione delle periferiche standard della macchina. Le unità a dischi erano generalmente acquistabili a parte: il sistema operativo per dischi era perciò offerto come estensione del sistema operativo principale, e veniva caricato solo quando era richiesto. In diversi casi il sistema operativo per dischi era chiamato DOS.

Sia le unità a disco rigido che quelle per i dischetti (o floppy) necessitavano di software capace di accedere in maniera rapida ai settori del disco contenente i dati. La differenza fra un'unità e un'altra era all'epoca rilevante, così come lo era anche un sistema operativo rispetto a un altro. Con il calo dei prezzi delle unità a dischi e quello dei relativi sistemi operativi dedicati, l'uso nei computer di tale combinazione si diffuse sempre più.

Molti home computer offerti da Commodore, Atari e Apple presentavano un sistema operativo per dischi, chiamato DOS nel caso del Commodore 64 (Commodore DOS), dell'Atari 800 (Atari DOS) e dell'Apple II (Apple DOS). Sul versante dei PC compatibili, IBM aveva già dal 1965 introdotto il DOS/360 e il DOS/VSE (Virtual Storage Extended) per i suoi mainframe System/360 e successivi. Molti di questi DOS erano memorizzati su un dischetto da avviare all'accensione del sistema: a tale prassi faceva eccezione il DOS della Commodore, contenuto direttamente nella ROM dell'unità a dischi Commodore 1541 (il computer non aveva un DOS ma una forma di BIOS capace di dialogare con le periferiche). L'unità a dischi Lt. Kernal per il Commodore 64/128 aveva il DOS memorizzato su dischetto, che veniva caricato in RAM al momento dell'avvio.

Nei computer più potenti c'erano altri tipi di sistemi operativi per dischi, come il VM di IBM, l'RSTS/RT-11/VMS/TOPS-10/TWENEX di DEC, l'ITS/CTSS del Massachusetts Institute of Technology, le diverse versioni del NOS di Control Data, il Vulcan di Harris, l'Unix di Bell Labs e altri ancora.

Nell'ambito dei microcomputer si avevano altri prodotti: i modelli 6800 e 6809 di SWTPC usavano il DOS FLEX di TSC, i TRS-80 di Radio Shack il TRS-DOS (il Color Computer usava l'OS-9), e molte delle macchine basate sull'Intel 8080 come i computer di IMSAI, di MITS, di Cromemco e di North Star Computers usavano il CP/M-80. Per maggiori informazioni vedi "Lista di sistemi operativi".

In genere un sistema operativo per dischi era caricato da un dischetto e solo pochi DOS erano memorizzati su altri tipi di memorie di massa: un paio di queste eccezioni erano il Disc Filing System per il BBC Micro, un kit composto alcuni chip da installare all'interno del computer che forniva il supporto alle operazioni di lettura/scrittura di file su unità a disco, e il Commodore DOS, che risiedeva nella ROM contenuta all'interno dell'unità a disco esterna.

## Tipologia

### DOS che erano estensioni del sistema operativo

* Apple DOS: sistema operativo dei computer della serie Apple II, fu il primo sistema operativo fornito con questi computer dall'introduzione delle unità a dischi nel 1979 fino al 1983, quando fu presentato il ProDOS. Era generalmente chiamato così per distinguerlo dallo MS-DOS;
* Commodore DOS: usato nei computer a 8 bit della Commodore; a differenza di altri era integrato direttamente nelle unità a dischi e non nella memoria centrale del computer;
* Atari DOS: usato nei computer Atari a 8 bit; il sistema operativo Atari offriva solo un accesso al disco di basso livello e perciò fu sviluppata un'estensione che era avviata dal dischetto e che offriva funzioni di alto livello quali l'uso di un file system;
* MSX-DOS: usato nei computer MSX; la prima versione del 1984 non era altro che l'MS-DOS 1.0 della Microsoft riscritto per funzionare con la CPU Zilog Z80; nel 1988 venne realizzata una seconda versione che introduceva il supporto alle cartelle secondarie, alla gestione della memoria e alle variabili d'ambiente; risiedeva in una ROM alloggiata all'interno della scheda di controllo dell'unità a dischi e grazie a ciò il sistema supportava l'accesso ai file anche senza il caricamento dell'interprete dei comandi a terminale mediante l'uso di comandi BASIC aggiuntivi;
* Disc Filing System (DFS): era componente opzionale per i computer BBC Micro ed era offerto come kit acquistabile separatamente e offriva un chip per il controllo delle unità a dischi, un chip ROM e altri chip logici, il tutto da installare all'interno del computer;
* AMSDOS: usato nei computer Amstrad CPC;
* GDOS e G+DOS: usato per le interfacce +D e DISCiPLE dei Sinclair ZX Spectrum;
* AmigaDOS: uno dei moduli principali del sistema operativo AmigaOS.

### DOS che erano il sistema operativo principale

Alcuni sistemi operativi per dischi erano il sistema operativo dell'intero computer:

* DOS/360: semplice sistema operativo inizialmente distribuito con i mainframe IBM serie System/360; in seguito divenne DOS/VSE e fu ancora solo VSE;
* DOS sviluppato da DEC per i suoi minicomputer della serie PDP-11 minicomputer;
* DOS dei compatibili IBM.
