DR-DOS

Da Wikipedia, l'enciclopedia libera.
(Enhanced) DR-DOS
Sviluppatore Digital Research ed altri
Famiglia SO DOS
Modello del sorgente Misto
Release corrente DR-DOS 8.1 / Enhanced DR-DOS 7.01.08 WIP (ottobre 2005 / febbraio 2006)
Tipo di kernel Kernel monolitico
Piattaforme supportate x86
Licenza Proprietaria
Stadio di sviluppo In corso
Sito web DRDOS, Inc. / The DR-DOS/OpenDOS Enhancement Project

Il DR-DOS è un sistema operativo compatibile PC-DOS per IBM PC e compatibili, sviluppato originariamente dalla Digital Research, Inc. (DR) di Gary Kildall, e derivato da CP/M-86.

Storia[modifica | modifica sorgente]

Le origini CP/M[modifica | modifica sorgente]

Il DR-DOS fu il nuovo nome dato a quella che allora era la versione più recente della lunga serie di sistemi operativi per computer creati da Digital Research. Il CP/M originale per processori a 8 bit Intel 8080/8085 e Z80 era stato fonte di numerose versioni derivate, la più nota delle quali era il CP/M-86 per la famiglia di processori Intel 8086/8088. Sebbene il CP/M avesse dominato il mercato fino a quel momento e fosse distribuito insieme alla maggioranza dei computer ad architettura non proprietaria, il PC IBM, nel 1981, portò all'inizio di quello che, in seguito, sarebbe stato un cambiamento epocale.

IBM aveva inizialmente pensato di offrire come sistema operativo del suo futuro computer l'ancora in fase di sviluppo CP/M-86 ma le trattative con Digital Research andavano per le lunghe. IBM contattò quindi Microsoft, che le fornì un sistema che altro non era se non l'86-DOS, che Microsoft aveva acquistato da Seattle Computer Products, e che derivava a sua volta dal QDOS precedentemente scritto da Tim Paterson. MS modificò l'86-DOS e lo fornì a IBM, che lo distribuì poi come PC-DOS.[1] Digital Research notò che il PC-DOS era molto simile al suo CP/M-86: il QDOS di partenza era infatti stato scritto usando le stesse API del CP/M.[2] Digital Research decise perciò di citare in giudizio IBM, che si accordò con la società di Kildall per offrire come opzione sull'acquisto dei suoi PC anche il suo sistema operativo.[3] Kildall accettò, ritenendo che il nuovo sistema di IBM, così come altri computer della stessa classe in passato, non avrebbe avuto un grosso successo[4]. Quando il PC IBM fu presentato, IBM offriva anche l'acquisto del suo PC-DOS per 40 dollari: nonostante fosse offerto come scelta, tale acquisto era in realtà obbligatorio dato che il CP/M-86 fu disponibile solo alcuni mesi dopo, e ad un prezzo di 240 dollari. Per questi motivi, il CP/M-86 vendette molto meno rispetto al PC-DOS.[5]

In seguito Digital Research creò un clone dell'MS-DOS che presentò nel 1988 col nuovo nome di DR-DOS.

La prima versione del DR-DOS[modifica | modifica sorgente]

La prima versione uscì nel maggio del 1988. I numeri di versione furono scelti in modo tale da suggerire a quale versione di MS-DOS potessero essere ricondotte le caratteristiche offerte dal sistema operativo; la prima versione resa disponibile al pubblico fu DR-DOS 3.41, che aveva caratteristiche migliori, seppur equivalenti, a quelle di MS-DOS 3.3 - oltre alla versione Compaq, Compaq DOS 3.31. (La versione di Compaq fu la prima ad introdurre il supporto a dischi rigidi con partizioni di grandezza superiore a 32 MB, caratteristica che sarebbe divenuta standard in MS-DOS 4.0 e releases successive).

In quel momento, MS-DOS era disponibile soltanto in allegato ad hardware, quindi DR-DOS riscuoté qualche successo, dal momento che gli utenti potevano acquistarlo tramite i normali canali di distribuzione. Inoltre, una licenza per DR-DOS costava di meno di una per MS-DOS. Per questo motivo DR fu contattata da un certo numero di costruttori di PC che erano interessati ad un DOS di terze parti - cosa che suggerì una serie di aggiornamenti per il sistema operativo.

Aggiornamenti più significativi[modifica | modifica sorgente]

L'aggiornamento più significativo fu il DR-DOS 5.0, rilasciato nel maggio del 1990 (l'azienda saltò la versione 4, per evitare confronti con MS-DOS 4.0). Questa release introdusse il ViewMAX, una shell di gestione dei file con un'interfaccia grafica basata sul GEM, e incorporava un software per la gestione della cache del disco ed un sistema di gestione della memoria migliore di quello di MS-DOS. Se confrontato con il meno recente MS-DOS 4.01, che incorporava già un gestore di memoria in modalità 386 (EMM386.SYS), in grado di convertire memoria XMS in memoria LIM 4.0 EMS, usata più spesso dalle applicazioni DOS, il sistema di gestione della memoria di DR-DOS aveva due caratteristiche in più.

In primis, su sistemi basati su microprocessori Intel 80286 o superiori con almeno 1 MB di RAM, il kernel di DR-DOS e strutture di memoria quali i buffer del disco potevano essere caricati nella High Memory Area, i primi 64 KB di memoria estesa che erano accessibili in modalità reale per via di un incompleto livello di compatibilità dell'80286 con microprocessori precedenti. Questo rendeva disponibile una quantità equivalente di memoria bassa o convenzionale, i primi 640 KB della RAM dei PC - la zona di memoria in cui tutte le applicazioni MS-DOS dovevano essere eseguite. Usare la memoria alta non era un'idea nuova, poiché questa zona poteva essere già utilizzata dalle applicazioni per Windows, a cominciare da Windows/286 2.1, rilasciato nel 1988, ma l'offerta di una maggior quantità di memoria per le applicazioni DOS era molto più interessante. Inoltre, su sistemi Intel 80386, il gestore di memoria EMS di DR-DOS consentiva il caricamento dei drivers di periferica DOS nei blocchi di memoria superiore (UMB), liberando ancora memoria. Per maggiori informazioni, vedere l'articolo sulla Upper Memory Area.

DR-DOS 5 fu il primo DOS ad integrare queste funzionalità nel sistema operativo di base (il caricamento di driver di periferica nei blocchi di memoria superiore era possibile utilizzando QEMM e MS-DOS). Così, su un sistema 386, con DR-DOS era possibile offrire molta più memoria convenzionale libera che con ogni altro DOS. Dopo che i drivers per il mouse e per le periferiche multimediali e uno stack di rete erano stati caricati, un sistema DOS in genere poteva avere da 300 a 400 KB di memoria convenzionale libera - troppo poco per poter eseguire la maggior parte del software progettato alla fine degli anni ottanta. DR-DOS 5, con qualche piccolo ritocco manuale, poteva caricare tutto questo e mantenere comunque tutta la sua memoria convenzionale libera - a parte qualche necessaria struttura dati DOS, fino ad arrivare a 620 KB su 640 KB totali, un quantitativo di memoria tale che alcuni programmi non potevano caricarsi perché trovavano libera memoria troppo "bassa" - i primi 64 KB. Il nuovo comando del DR-DOS 5, LOADFIX, rimediava a questo lasciando un piccolo spazio libero all'inizio della memory map.

Dati i limiti del tempo, si trattava di una tecnologia incredibilmente potente, tale da rendere la vita più semplice ai tecnici PC del tempo, oltre a dare una rapida e considerevole popolarità a DR-DOS 5.0.

L'aggressiva competizione di Microsoft[modifica | modifica sorgente]

Minacciata da una competizione formale nell'arena dei sistemi operativi DOS, Microsoft rispose immediatamente. Fu annunciato lo sviluppo di MS-DOS 5.0, nel maggio del 1990, che avrebbe dovuto essere rilasciato qualche mese dopo, ed avrebbe incorporato caratteristiche avanzate simili a quelle di DR-DOS. Si trattava di vaporware, poiché MS-DOS 5.0 fu rilasciato nel giugno del 1991 e, anche se includeva controparti per quel che riguarda la gestione della memoria, non offriva tutti i miglioramenti alla sintassi dei comandi DOS che Digital Research aveva fatto.

DR rispose rilasciando DR-DOS 6.0 nel 1991. Esso incorporava il programma di compressione al volo delle unità a disco SuperStor, così da aumentare al massimo lo spazio disponibile sui piccoli dischi rigidi del tempo - 40MB era ancora una grandezza comune, che, però, spesso non era sufficiente, a causa della crescita in dimensioni delle applicazioni, in modo particolare Microsoft Windows. DR-DOS 6.0 comprendeva anche una API per il multitasking su CPU che supportavano la protezione della memoria, in particolare gli Intel 80386 e superiori. L'API era disponibile solo per le applicazioni in grado di rilevare DR-DOS, ma normali applicazioni DOS, se ben progettate, potevano essere soggette a pre-emptive multitasking con l'ausilio del task switcher integrato, TaskMax. Su sistemi 286, le applicazioni DOS potevano rimanere sospese in background, così da permettere ad altre di essere eseguite. Tuttavia, il sistema multitasking di DR fu considerato inferiore tecnicamente rispetto a offerte di terze parti come DESQview, che potevano eseguire più di un'applicazione che richiedevano accesso diretto all'hardware e applicazioni grafiche, e persino mostrarle su schermo in finestre ridimensionabili, e non fu quindi largamente utilizzato.

Microsoft rispose con MS-DOS 6.0, che, ancora una volta, offrì delle caratteristiche equivalenti a DR-DOS 6.0 - ma l'utilizzo di codice rubato causò problemi legali. Vedere l'articolo su MS-DOS per maggiori informazioni.

Sebbene DR-DOS fosse quasi totalmente compatibile a livello binario con le applicazioni scritte per MS-DOS, Microsoft, tuttavia, si sforzò notevolmente di escogitare trucchi per creare incompatibilità. Per esempio, venne inserito del codice nella versione beta di Windows 3.1 che restituiva un messaggio di errore non fatale se veniva rilevato un DOS non Microsoft. Disabilitando questo codice di rilevamento (o se l'utente decideva di ignorare il messaggio di avviso), Windows funzionava perfettamente su DR-DOS. [1] Questo codice fu, tuttavia, rimosso dalla release definitiva di Windows 3.1 e da tutte le versioni successive. (vedi anche Embrace, extend and extinguish per altre tattiche Microsoft.)

Patching per contrastare Microsoft[modifica | modifica sorgente]

Fu semplice per Digital Research patchare DR-DOS per evitare il 'controllo di autenticità di Windows 3.1 beta, e la versione corretta fu disponibile 6 settimane dopo il rilascio di Windows 3.1. Con una strategia di pubblicità migliorata e una confezione riveduta, un sistema di gestione della memoria molto avanzato, compressione del disco e il software di caching Super PC-Kwik, DR-DOS 6.0 aveva un valore innegabile e riscosse facilmente un grande successo.

In questo periodo, il gigante del networking Novell acquistò Digital Research, allo scopo di utilizzare la linea di prodotti DR come leva nella sua complessa strategia per interrompere il monopolio Microsoft. (Si trattò di una campagna acquisti massiccia, coronata da un severo fallimento, per Novell: la ditta acquisì WordPerfect Corporation quasi nello stesso momento, alcuni prodotti Borland, e investì massicciamente anche in Unix.) Il previsto DR-DOS 7.0, progettato per avere la meglio sul tribolato MS-DOS 6.0 di Microsoft, fu ripetutamente ritardato. Quando alla fine fu rilasciato - rinominato Novell DOS 7.0 - fu una delusione. Era più pesante, ed introdusse molti nuovi bug: la principale aggiunta funzionale fu il secondo tentativo di Novell per un sistema di networking peer-to-peer, Personal Netware. Questo prodotto funzionava meglio del suo predecessore Netware Lite, ma era incompatibile col sistema di rete Microsoft, che stava divenendo popolare perché supportato da Windows per Workgroup, OS/2 e Windows NT. Per poter far coesistere entrambi sullo stesso sistema era necessario un lavoro considerevole, e Personal Netware non riscosse, così, troppo successo.

Contributi di Novell[modifica | modifica sorgente]

Novell DOS 7 richiedeva diverse releases per riparare i bugs, e non era del tutto stabile quando il successivo ciclo di sviluppo ebbe inizio. Realizzando, alla fine, che le grandi abilità nel networking non si applicavano ad altre aree, Novell vendette la linea di prodotto a Caldera, che al momento aveva un valore commerciale limitato.

La causa legale contro Microsoft[modifica | modifica sorgente]

Sebbene DR-DOS non fosse più una minaccia concreta alla sua presenza sul mercato nel 1995, Microsoft adesso stava affrontando una crescente competizione da parte del PC-DOS 6.3 di IBM, e si risolse nel rendere impossibile l'utilizzo o l'acquisto della successiva versione di Windows, Windows 95, con un qualunque prodotto DOS che non fosse il suo. Sebbene fosse presentato come un cambiamento puramente tecnico, questo fu in seguito il motivo di un'importante causa legale iniziata da Caldera a Salt Lake City.[6] Gli avvocati di Microsoft provarono ripetutamente a insabbiare il caso, senza successo. Subito dopo la fine della serie di deposizioni precedenti il processo (in cui le parti elencano le prove che intendono presentare), ci fu un accordo privato per un risarcimento, il cui ammontare non fu reso ufficializzato anche se dovrebbe aggirarsi sui 150/200 milioni di dollari.[7] DR-DOS fu poi venduta a Lineo, dove viene ancora prodotto per alcune applicazioni speciali. Una di queste applicazioni è Seatools di Seagate, che avvia una versione di DR-DOS.

Versioni recenti[modifica | modifica sorgente]

Il DR-DOS 7.01, rilasciato da Caldera come OpenDOS sotto una licenza di uso non commerciale sotto forma di codice sorgente, viene ancora attivamente sviluppato da The DR-DOS/OpenDOS Enhancement Project, fondato nel luglio 2002 nel tentativo di portare il livello di funzionalità di DR-DOS a uno pari a quello dei moderni sistemi operativi per PC. Gli sforzi del progetto si sono fino ad ora concretizzati nell'aggiunta del supporto nativo per dischi più grandi (LBA) e del filesystem FAT32. Ci sono stati anche diversi altri miglioramenti, come una migliore gestione della memoria e il supporto per la nuova estensione del filesystem FAT+, che permette la creazione di file di massimo 256 GB su normali partizioni FAT.

Nel 1998 il DR-DOS fu venduto a una piccola azienda originatasi da Lineo, Inc., DeviceLogics, che continuò a venderlo come sistema operativo embedded. Nel 2002 è stato acquistato da una società denominata DRDOS, Inc., che lo commercializza tuttora.

Il DR-DOS 8.0 è stato rilasciato il 30 marzo 2004, col supporto per la FAT32 e dischi grandi, la possibilità di avviarsi da una memoria ROM o Flash, il multitasking e un gestore di memoria DPMI. In seguito, l'azienda si divise in DeviceLogics Inc. e DR-DOS Inc., che ha rilasciato DR-DOS 8.1 nell'autunno del 2005. Tuttavia, questa versione è stata ritirata dal mercato (a causa delle scoperte riassunte fra breve), e sostituita con una versione più vecchia (7.03).

Controversie[modifica | modifica sorgente]

Nell'ottobre del 2005 si è scoperto che con il rilascio di DR-DOS 8.1, DR-DOS Inc. non aveva rispettato i termini della GPL, con riferimento ad alcune applicazioni incorporate, ed aveva inoltre mancato di aggiungere riferimenti alle licenze e alle notizie sugli autori di altre applicazioni. [2] In particolare, DR-DOS Inc. ha violato i termini di quei software licenziati sotto la GPL mancando di includere informative sulla licenza e di chiedere il permesso agli autori, quasi che il software venisse distribuito sotto una licenza diversa, e facendo pagare un prezzo per il codice sorgente troppo superiore a quelli normali di distribuzione, così da trarne profitto.

Note[modifica | modifica sorgente]

  1. ^ Paul Freiberger, Michael Swaine, Fire in the Valley: The Making of the Personal Computer, 2a, New York, McGraw-Hill [1984], 2000, pp. 332–333, ISBN 0-07-135892-7.
  2. ^ Tim Paterson, From the Mailbox: The Origins of DOS in Microprocessor Report, 03/10/1994. URL consultato il 20/11/2006.
  3. ^ (EN) Daniel S. Morrow, Gordon Eubanks Oral History - Computerworld Honors Program International Archives (Transcript of a Video History Interview with Gordon Eubanks) (PDF), 8 novembre 2000. URL consultato l'8 luglio 2009.
  4. ^ (EN) Robert Scoble, The rest of the story: How Bill Gates beat Gary Kildall in OS war, 8 agosto 2007. URL consultato l'8 luglio 2009.
  5. ^ Gary Kildall Special in Computer Chronicles, Internet Archive. URL consultato il 18/09/10.
  6. ^ Causa Caldera - Microsoft. URL consultato il 19/03/2011.
  7. ^ Storia di DRI. URL consultato il 19/03/2011.

Collegamenti esterni[modifica | modifica sorgente]

Voci correlate[modifica | modifica sorgente]

Informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica