# Multiuser DOS

Multiuser DOS è un sistema operativo real-time per microcomputer IBM PC e compatibili.
Evoluzione del più vecchi sistemi operativi Concurrent CP/M e Concurrent DOS, venne sviluppato originariamente da Digital Research, e discende direttamente dai precedenti CP/M ed MP/M.
La prima versione di CP/M per il PC IBM, CP/M-86, non fu un successo commerciale, dal momento che l'MS-DOS di Microsoft offriva più o meno le stesse possibilità ad un prezzo considerevolmente inferiore. In maniera del tutto simile ad MS-DOS 1.0, CP/M-86 non sfruttava appieno la potenza e le capacità del nuovo sistema a 16 bit. Essa venne presto soppiantata da un'implementazione del "fratello maggiore" del CP/M con supporto multitasking, MP/M-86, cosa che rese un PC un sistema multiutente in grado di gestire più accessi contemporaneamente attraverso terminali collegati alle porte seriali. L'ambiente presentato dava a ciascun utente l'impressione di avere il pieno controllo sul sistema.
Dal momento che i terminali costavano molto meno di un PC del tempo, essi offrivano risparmi considerevoli, e facilitavano l'utilizzo di applicazioni multiutente come quelli per il controllo di conti bancari o di azioni in un periodo in cui le reti di computer erano rare, molto costose e difficili da implementare.
CP/M-86 ed MP/M-86 furono in seguito fusi per creare Concurrent CP/M (noto anche come CCP/M), che offriva un livello di compatibilità più completo con CP/M-86, oltre che le caratteristiche multiutente di MP/M-86.
Dal momento che MS-DOS era nato come clone del CP/M, quest'ultimo poteva offrire una limitata compatibilità con MS-DOS - le applicazioni che non richiedevano l'accesso diretto allo schermo o ad altre periferiche potevano essere seguite su CCP/M. Ad esempio, se un programma che lavorava in modalità solo testo come PKZip funzionava perfettamente ed offriva maggiori funzionalità dell'archiviatore Arc nativo per CP/M, applicazioni più complesse che agivano direttamente sullo schermo, come WordStar per DOS, richiedevano versioni native CCP/M per poter funzionare.
CCP/M divenne in seguito Concurrent DOS (noto anche come CDOS), che offriva una compatibilità DOS più completa. La prima versione rilasciata, CDOS 3.2, era compatibile con MS-DOS 1; le versioni successive aggiunsero la compatibilità con MS-DOS 2.x e 3.x. Le versioni 5 e 6 (Concurrent DOS XM) potevano effettuare il bank switching di più di un programma usando la memoria espansa.
Nel 1987, CDOS venne riscritto, e nacque Concurrent DOS/386. Dal momento che il nuovo sistema operativo funzionava soltanto con processori Intel 80386, ne poteva sfruttare le caratteristiche di virtualizzazione dell'hardware, cosa che permetteva alla maggior parte delle applicazioni DOS di funzionare su CDOS/386 senza alcuna modifica - anche sui terminali. Il sistema operativo supportava anche l'accesso contemporaneo di più di un utente ai file, permettendo così alle applicazioni DOS con supporto di rete di essere eseguite come se si trovassero su PC singoli collegati ad un server di rete. CDOS/386 rappresentava, perciò, non solo un'alternativa economica a singoli PC, ma permetteva ad un singolo server di reggere il carico di un intero ufficio, senza che fosse necessario investire in stazioni di lavoro, schede o cavi di rete.
Le ultime versioni di CDOS implementarono alcune delle funzionalità avanzate del più recente clone a singolo utente di MS-DOS prodotto da Digital Research, DR-DOS; il prodotto fu, per maggiore chiarezza, ridenominato Multiuser DOS, a volte abbreviato in MDOS.
MDOS aveva alcune limitazioni tecniche che ne compromettavano la possibilità di competere con le LAN basate su MS-DOS. Richiedeva degli driver di periferica appositamente progettati anche per le periferiche più comuni, dal momento che quelli per MS-DOS non potevano essere usati in un ambiente multiutente o multitasking. L'installazione dei driver era molto più complessa di quanto non fosse in MS-DOS, in cui bastava copiare i file sul disco di avvio e modificare appropriatamente il file CONFIG.SYS - era necessario effettuare il relinking del kernel MDOS (noto come nucleo) mediante il comando SYSGEN.
MDOS non era in grado di utilizzare molti componenti aggiuntivi per MS-DOS, come gli stack di rete, ed aveva possibilità molto limitate per quel che concerneva il supporto degli sviluppi hardware successivi del mondo PC, quali gli adattatori grafici, le schede sonore, le unità CD-ROM ed i mouse. Sebbene si sia presto posto rimedio ad alcune di queste mancanze - ad esempio, vennero sviluppati dei terminali grafici, che permettevano l'utilizzo di software sviluppato per schede CGA, EGA e VGA - era meno flessibile a questo proposito di quanto non lo fosse una rete di PC singoli; quando il prezzo di questi ultimi cominciò a calare, divenne sempre meno competitivo, sebbene offrisse ancora dei benefici in termini di TCO (costo totale di possesso). A differenza di MP/M, non divenne mai popolare come sistema operativo multitasking per singoli utenti, in parte a causa dei costi delle licenze, in parte a causa della necessità di driver di periferica appositi, a differenza delle alternative DOS quali Quarterdeck DESQview.