L'MS-DOS

Logo MS-DOSNel 1981 Bill Gates e la Microsoft cominciano il loro percorso verso il successo grazie all'MS-DOS: vendono alla IBM la licenza del QDOS della SCP e subito dopo acquisiscono il QDOS per 50.000 dollari, allo scopo di svilupparlo e darlo in licenza direttamente alla IBM per i neonati PC. Il travolgente successo, dettato principalmente dal prezzo bassissimo dell'accoppiata hardware / software e dai notevoli sforzi finanziari e propagandistici della IBM per promuovere lo sviluppo di software sulla piattaforma, è continuato fino all'uscita di Windows 95, sebbene il suo sviluppo sia stato ufficialmente interrotto nel 2000 all'uscita di Windows ME. Questo successo rende senz'altro l'MS-DOS un protagonista del periodo tra gli anni 80 e 90 in cui il computer entra con prepotenza nelle attività produttive e commerciali e, gradualmente, nelle case.

Il nome è presto spiegato: QDOS sta per Quick & Dirty Operative System - togliete il veloce ed aggiungete la ditta della farfalla ed avrete l'MS-DOS. Il sistema fu venduto nel tempo anche con altri nomi, dipendenti dal licenzatario, in genere collegato alla ditta produttrice del computer acquistato: PC-DOS della IBM, Compaq DOS...

L'interfaccia era essenzialmente testuale: un freddo prompt che accetta comandi da tastiera per lanciare programmi o eseguire funzioni di controllo sull'esecuzione, emulando le funzioni più basilari delle interfacce Unix e CP/M. Dal punto di vista del sistema operativo, le funzionalità offerte erano molto semplici e derivavano principalmente da quelle del CP/M:

  • un livello d'astrazione dell'hardware praticamente inesistente (tutte le periferiche dovevano avere specifici device driver scritti a bassissimo livello - praticamente in codice macchina - spesso diversificati per ogni applicazione);
  • nomi riservati e non personalizzabili per l'accesso ad alcune periferiche basilari come le porte seriali (COM1, COM2...) e quelle parallele (LPT1...);
  • una nomenclatura unificata a singola lettera per le periferiche disco, con A e B riservate per le unità floppy e C per la partizione primaria del primo disco rigido;
  • un sistema di immagazzinamento dati basato su FAT, ovvero una struttura gerarchica di file (documenti, nella moderna nomenclatura Windows) organizzati in directory (cartelle);
  • servizi software forniti alle applicazioni tramite l'uso di interrupt, con limiti notevoli di efficienza e potenza anche in relazione all'hardware disponibile all'epoca: molte applicazioni ignoravano del tutto questi servizi ed utilizzavano direttamente servizi proprietari forti del rapporto diretto coll'hardware permesso dal DOS (cosa possibile grazie alla quasi totale assenza di uno schema di protezione per l'hardware).

Nelle versioni che si sono succedute (di cui una, la 4.0, disastrosa, realizzata direttamente dalla IBM e non dalla Microsoft, impegnata nel realizzare OS/2), l'MS-DOS si è naturalmente evoluto, ma soprattutto negli accessori forniti, mantenendo quasi intatte le caratteristiche di fondo già dette: nel tempo si è aggiunta la DOS Shell (un'inguardabile interfaccia grafica per l'accesso al file system - niente a che vedere con software dedicati disponibili all'epoca), il QBasic, il DoubleSpace (che in tempi in cui gli harddisk avevano costi proibitivi, rispondeva all'esigenza di mantenere i dati su disco compressi ma in modo trasparente per le applicazioni).

Le versioni più importanti sono state sicuramente la 5.0 e la 6.2: la prima ha introdotto il QBasic, lo splendido editor di testo a tutto schermo EDIT.COM, l'help in linea, una gestione avanzata della memoria (EMS e XMS); la seconda e' la versione più stabile che ha introdotto, tra le altre cose, il già citato DoubleSpace (copiato illegalmente da un software molto in voga chiamato Stacker) e la gestione di una cache in memoria per l'accesso veloce ai dati su disco (SmartDrive).

I comandi più comuni avevano un uso abbastanza elementare ed erano rappresentati da parole piuttosto corte, in relazione proprio al loro uso:

  • cd: per spostarsi da una directory ad un'altra;
  • copy: per copiare un file tra due unità disco o tra due cartelle;
  • del: per cancellare un file;
  • md/rd: per creare o cancellare una directory;
  • dir: per mostrare l'elenco dei file e directory in una directory;
  • type/more: per mostrare il contenuto di un file di testo per intero o pagina per pagina;
  • ren: per cambiare il nome di un file o di una directory;
  • set: per impostare una variabile d'ambiente.
C'era poi un certo numero di applicazioni software di terze parti che facevano da contorno al sistema stesso e assolutamente irrinunciabili, distribuite sia come shareware che come freeware (molto raro), in genere ottenute in edicola con qualche rivista, oppure come applicazioni commerciali. Tra esse vale la pena ricordare senz'altro:
  • 4DOS: un sostituto dell'interprete di comandi fornito COMMAND.COM con molte funzionalità aggiuntive che lo rendevano indispensabile già dopo un breve utilizzo;
  • Norton Utilities e PC Tools (ma anche altri): strumenti per la gestione dei dischi e del file system a livelli molto più alti e molto più semplici da utilizzare dei comandi forniti dal DOS;
  • QEMM: un avanzato gestore di memoria indispensabile nel periodo del "640kb should be enough for anyone, but me";

Rapportato a quello sui sistemi operativi odierni, lo sviluppo di applicazioni per MS-DOS era un puro inferno: solo i programmatori più eccentrici (di cui temo d'aver fatto parte per qualche anno) trovavano lati positivi nella totale assenza di API, di interfacce grafiche standard, di protezione della memoria e dell'hardware (che significa ad esempio un numero infinito di reset della macchina in fase di sviluppo), di mutitasking. Le uniche applicazioni che era possibile fare "in fretta" (relativa) erano quelle con interfaccia testuale, a meno di non legarsi ad una interfaccia grafica proprietaria che avrebbe fatto lievitare non di poco i costi ed in definitiva il prezzo per l'utente: ecco quindi che una percentuale altissima di applicazioni veniva realizzata con interfacce assolutamente scadenti rispetto ad altri sistemi operativi emergenti all'epoca (MacOS, SGI...), che hanno da un lato di fatto castrato le possibilità della piattaforma in alcuni ambiti professionali e dall'altro hanno determinato schemi d'interfaccia vecchi già in partenza e che condizionano ancora le applicazioni di oggi. Una eccezione di rilievo va segnalata per quanto riguarda i videogiochi: la possibilità di contatto diretto con l'hardware e la pressocché totale disponibilità delle risorse hardware presenti (l'impatto dell'MS-DOS su memoria e CPU erano trascurabili rispetto ad altri sistemi operativi dell'epoca) erano ottimi punti a favore per quel particolare settore, penalizzato d'altro canto dalla necessità di supportare specificatamente ogni periferica hardware in circolazione per offrire il massimo agli acquirenti (particolarmente doloroso ad esempio il supporto delle schede audio ed in un secondo tempo delle schede video).

Ricordo i tempi del DOS con una certa nostalgia: certo l'uso del computer è ormai completamente stravolto rispetto all'epoca, eppure la rigida sintassi e la difficoltà nell'uso, la scarsità e la difficile reperibilità delle applicazioni in circolazione, insieme a tanti altri fattori, rendevano a mio parere l'esperienza col personal computer più piena ed anche più didattica - è come se fossimo passati ad un utilizzo più passivo e meno esplorativo, meno curioso del mezzo e più interessato a raggiungere uno scopo in tempi brevi.

Un'ultima, doverosa, nota. Il DOS non è proprio morto: la Microsoft difficilmente manda in pensione del tutto le proprie creature, così ancora oggi la shell di Windows ricorda molto da vicino il DOS e Windows è in grado di eseguire applicazioni di 20 anni fa (almeno la maggior parte). Personalmente finché ho usato Windows a casa ho sempre mantenuto l'uso della versione DOS di F-Prot come antivirus (è freeware e aggiornata in continuazione), del client ftp e di quello telnet forniti da Microsoft stessa (anche se in realtà sono applicazioni Windows con interfaccia testuale) e ogni tanto di Volkov Commander (clone di Norton Commander) - per non parlare di alcuni strumenti un pò più avanzati come compilatori (java, c...) e software per il controllo di versione (cvs, svn...). E per chi ha un pò di nostalgia, è sempre possibile lanciare DOSBox e tuffarsi nei tempi andati... Oppure fare un giro in un archivio di software ancora sviluppato per DOS.

 

aiuto

macromedia 2 - 1 Febbraio 2007 18:13

chiedo un aiuto se possibile non riesco piu' a cancellare un file , che ho scaricato , dal mio desktop, se potete gentilmente darmi una risposta a questa e-mail [email protected].
grazie antocipatamente.
p.s. intanto provero' con i comandi dos ma non so usarlo molto bene

L'MS-DOS

Vittorio - 31 Marzo 2007 19:20

Ottimo riassunto sull'Ms-dos, mi ha ricordato i bei tempi che furono, lenti ma furono belli ;-)
Una cosa però non l'ho letta e che secondo me andrebbe citata e cioè che anche win3.0 e il successivo win3.1 (per network) sono stati la base dell'attuale sistema Windows. Inoltre vorrei ricordare che l'evoluto Win-Xp si fonda sull'Ms-dos, il boot da dove si avvia l'Xp è l'antico seppur migliorato boot di systema del Ms-Dos.

nomi file in dos

ghembo - 18 Aprile 2007 13:53

mi servirebbe sapere il nome in dos della cartella C:\Documents and Settings\Utente\Menu Avvio\Programmi\Esecuzione automatica

re:nomi file

Matteo - 18 Aprile 2007 19:14

se sei su windows xp è sufficiente usare le doppie apici intorno al nome per eseguire dei comandi su un percorso con gli spazi. Tra l'altro premendo Tab la shell dovrebbe completare automaticamente i nomi (ad esempio se scrivi c:\Doc puoi premere Tab finché non appare "Documents and settings").
Per sapere invece il nome breve dei file, se ricordo bene, puoi eseguire il comando "dir /x" che dovrebbe mostrare oltre al nome lungo dei file anche i nomi brevi. Non sono molto sicuro di ricordare bene, controlla con "dir /?" per sapere se x è l'opzione giusta.

nomi file

ghembo - 19 Aprile 2007 17:06

si...il comando era giusto solo che il dos mi diceva che era menuav~1e quando lo scrivevo in dos mi diceva impossibile trovare il percorso specificato

nomi file

ghembo - 19 Aprile 2007 17:09

no nnte lascia xdere avevo dimentikato un pezzo del percorso...hehe!grazie 1000 x avermi aiutato a risolvere il problema

sempre nomi file

ghembo - 19 Aprile 2007 17:22

piu che altro adesso mi serve sempre in linguaggio dos la cartella
C:\Documents and Settings\Utente\Documenti\File ricevuti

xk nel comando dir /x nn c è

re: sempre nomi file

Matteo - 19 Aprile 2007 19:16

le doppie apici con i nomi lunghi o il tab per il completamento automatico come spiegato sopra non funzionano?

critica e non

il viaggiatore - 29 Maggio 2007 09:29

un bel sito però sarebbe bello se contenesse informazioni in più sul dos

ottimo sito

ag - 28 Giugno 2007 11:36

e veramente spettacolare insegnare un s.o come il dos i ragazzi di oggi non sanno neache che cosè la riga di comando

non condivido

tony - 28 Giugno 2007 14:29

"Inoltre vorrei ricordare che l'evoluto Win-Xp si fonda sull'Ms-dos"

probabilmente è vero quanto dici sul boot,ma dire che Xp si basa su Dos è scrorretto in quanto l' ultimo sistema nn Nt a farlo è stato ME.

Emulazione Dos su Windows

tony - 28 Giugno 2007 14:32

Volevo chiedere qualche notizia in piu circa l' emulazione Dos sui sistemi Windows NT(2000,2003server,Xp) e principalmente su Vista.Grazie.

Una delle domande è:i comandi dos lanciati dal prompt di windows vengono eseguiti da un dos lanciato come applicazione oppure è windows stesso a simulare il dos?

re: tony

Matteo - 28 Giugno 2007 21:22

Hai assolutamente ragione. La base di Windows XP è Windows NT, non il Dos. I due sistemi operativi sono completamente diversi.

Non credo sia corretto parlare di "emulazione DOS" quando ci si riferisce al prompt di comandi di Windows XP: è il sistema operativo stesso che offre alle applicazioni servizi a basso livello simili (non del tutto sostitutivi) a quelli che offriva il DOS, in particolare per quanto riguarda l'accesso alla memoria, alle porte e agli interrupt.
Il prompt dei comandi non è altro che una shell esattamente equivalente, come funzione, a quella di un sistema unix: non fa altro che permettere l'esecuzione di programmi e gestire per loro l'input e l'output del testo.
Poiché il numero di servizi di basso livello che erano disponibili in MS-DOS e che lo sono ancora in Windows è piuttosto limitato, alcune vecchie applicazioni DOS non funzionano su Windows, oppure si comportano in modo imprevisto. Per ovviare a questo problema esistono veri e propri ambienti di emulazione, come il DosBox citato nel testo: il loro scopo è quello di offrire il maggior numero possibile di quei servizi e fare in modo che essi funzionino esattamente come si aspettano programmi scritti fino ad una quindicina di anni fa, in modo tale che l'esperienza d'uso sia per quanto possibile identica a quella originale.

bla

Palla di lardo - 26 Agosto 2007 19:45

E' più che evidente che noi tutti ci troviamo difronte a delle critiche talmente sterili, da considerarsi esilaranti: il sito è stupendo.

il dos

elmeiodeimeio - 5 Dicembre 2007 14:46

w ms-dos....anke se io nn ho avuto l'occasione di imparare completamente come si usa
Weblog Koan Progetti Foto Contatti