DR-DOS
Da Wikipedia, l'enciclopedia libera.
(Enhanced) DR-DOS | |
---|---|
Gruppo di sviluppo: | In origine Digital Research, attualmente è sviluppato da DRDOS, Inc. e The DR-DOS/OpenDOS Enhancement Project |
Famiglia: | DOS |
Tipo di sorgente: | Misto - in parte Closed source, in parte Open Source |
Ultima versione stabile: | DR-DOS 8.1, Enhanced DR-DOS 7.01.08 WIP / Oct 2005, Feb 2006 |
Tipo di kernel: | Enhanced DR-DOS kernel |
Ambiente desktop: | CLI, GUI disponibile separatamente |
Licenza: | Proprietaria |
Stato dello sviluppo: | In corso |
Sito web: | DRDOS, Inc. / The DR-DOS/OpenDOS Enhancement Project |
DR-DOS è un sistema operativo compatibile PC-DOS per IBM PC e compatibili, sviluppato originariamente dalla Digital Research Inc. di Gary Kildall, e derivato da CP/M-86.
Indice |
[modifica] Storia
[modifica] Le origini CP/M
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 8080 a 8 bit, Z80 e 8085 era stato fonte di numerose versioni derivate, la più nota delle quali fu CP/M-86 per la famiglia di processori Intel 8086/8088. Sebbene 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.
Piuttosto che ottenere in licenza CP/M-86 da Digital Research, come fecero altri costruttori di computer basati su processore 8088, IBM scelse di fornire PC con memoria di massa che avevano MS-DOS preinstallato, e offrì CP/M-86 come opzione (insieme a UCD p-System), quando esso fu disponibile. PC-DOS era basato su QDOS di Seattle Computer Products, a sua volta basato su CP/M. Gli esperti, nel 1982, sostenevano che CP/M-86 fosse un prodotto tecnicamente superiore, e che alla fine si sarebbe comportato meglio sul mercato. Tuttavia, CP-M/86 non era ancora pronto quando l'IBM introdusse il PC nell'agosto 1981, e Microsoft si accordò con IBM per vendere PC-DOS a 60$, rispetto ai 240$ chiesti da Digital Research per CP-M/86. La percentuale di costruttori di PC pronti a spendere quattro volte tanto per comperare CP/M-86 era molto bassa, e la maggiore disponibilità di software applicativo compatibile, determinante all'inizio nell'avvantaggiare Digital Research, fu soltanto temporanea.
Digital Research combatté una lunga battaglia per pubblicizzare CP-M/86, senza però aver possibilità di vittoria: alla fine, si giunse alla conclusione che non era possibile scalzare Microsoft e IBM dalla posizione dominante in fatto di software applicativo in cui si trovavano - si decise quindi di modificare CP-M/86, in modo tale che potesse eseguire le applicazioni scritte per MS-DOS e PC-DOS. Questa nuova versione fu ripresentata nel 1988 col nuovo nome di DR-DOS.
[modifica] La prima versione di DR-DOS
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 DRI 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.
[modifica] Aggiornamenti più significativi
L'aggiornamento più significativo fu DR-DOS 5.0, nel maggio del 1990. (L'azienda saltò la versione 4, per evitare confronti con MS-DOS 4.0). Questa release introdusse ViewMAX, una shell di gestione dei files con un'interfaccia grafica basata su GEM, e incorporava un software la gestione della cache del disco, oltre a 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 '80. 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.
[modifica] L'aggressiva competizione di Microsoft
Minacciata da una competizione formale nell'arena dei sistemi operativi DOS, Microsoft rispose con veemenza. 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 applcazioni 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.)
[modifica] Patching per contrastare Microsoft
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 grandissimo 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 campagnia 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.
[modifica] Contributi di Novell
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 Systems, che al momento aveva un valore commerciale limitato.
[modifica] La causa legale contro Microsoft
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. 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 pubblico. 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.
[modifica] Versioni recenti
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 2002, DR-DOS fu venduto a una piccola azienda originatasi da Lineo, DeviceLogics, che continuò a venderlo come sistema operativo embedded. 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).
Attuale versione di DR-DOS: 7.03 Attuale versione di Enhanced Dr-DOS: 7.01.08 WIP
[modifica] Controversie
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.
[modifica] Voci correlate
[modifica] Collegamenti esterni
- (EN) DigitalResearch
- (EN) DR-DOS Versione 7.03
- (EN) Progetto "Enhanced DR-DOS/OpenDOS"
- (EN) Forum "Enhanced DR-DOS"
- (EN) Wiki DR-DOS
- (EN) Old Os Informazioni e download per utenti DR-DOS.