Sistemul de operare MS-DOS (MicroSoft Disk Operating System) a ap�rut odat� cu primele calculatoare IBM-PC (1981). El este un sistem de operare pe 16 biti, ce mosteneste elemente din predecesorul s�u CP/M, dar ofer� un control mult mai bun asupra computerului. El a fost proiectat s� ruleze �n mod real pe procesoare Intel si a fost folosit mult �n perioada 1981-1995. Desi se presupune c� �n prezent el a disp�rut, portiuni de MS-DOS mai pot fi g�site �nc� �n sistemele Windows actuale, fiind folosit �n principal pentru compatibilitatea cu programele vechi. E de preferat s� stiti cum lucreaz� sistemul DOS pentru a �ntelege cum lucreaz� programele mai vechi.
Pentru a �ntelege mai usor acest ghid, e bine s� aveti ceva cunostinte de Windows (3.1, 95/98/ME, NT/2k/XP) sau de DOS.
�napoi la �nceputSistemul MS-Dos a fost proiectat pentru a fi mono-utilizator si mono-task, lucru care nu mai este suficient �n ziua de azi. Rigiditatea sistemului si dorinta compatibilit�tii cu versiunile anterioare au f�cut ca aceste impedimente s� nu poat� fi dep�site, si astfel, �n timp, sistemul DOS nu a mai putut tine pasul cu evolutia computerelor si cu cerintele utilizatorilor si astfel a trebuit s� fie �nlocuit de Windows 95.
De la lansarea sa �n 1981 si p�n� �n prezent, sistemul MS-DOS a avut mai multe versiuni. Versiunea 1.0 era extrem de limitat�, neav�nd suport nici chiar pentru directoare! Versiunea 2.0 a integrat mai multe concepte din sistemul Microsoft XENIX (o variant� de UNIX), ceea ce a dus la schimb�ri majore �n structura sistemului DOS. A fost ad�ugat suportul pentru directoare si pentru discuri (limitat la 32MB). Versiunea 4.0 a fost iar�si important�, deoarece a dus la dezvoltarea flexibilit�tii sistemului (sunt recunoscute discuri mai mari, apar managere de memorie). Versiunile 6.0, 6.2 si 6.22 au fost cele mai r�sp�ndite si folosite versiuni de DOS. Totusi, ele au fost si ultimele versiuni de DOS "adev�rate". �ncep�nd cu 1995, Microsoft a lansat MS-DOS 7.0 �mpreun� cu noul sistem de operare Windows '95. Acesta era defapt un MS-DOS 6.22 redus doar la componentele de baz�. Windows 98, ME, NT, 2k, XP contin doar un nucleu redus de MS-DOS, folosit �n special pentru compatibilitatea cu programele mai vechi.
Sistemul DOS a fost distribuit si de alte firme, �n afar� de Microsoft. De exemplu, varianta de DOS distribuit� de IBM se numea PC-DOS, iar cea distribuit� de Novell se numea DR-DOS (ea a rezistat mai mult dec�t MS-DOS). Diferentele dintre aceste sisteme erau destul de mici.
�napoi la �nceputNucleul sistemului MS-DOS const� �n 3 fisiere. Acestea se afl� �n directorul r�d�cin� al sistemului (de obicei pe discul C): C:\. Fisierele se numesc:
Io.sys este cel mai important fisier, si era �nc�rcat primul, la sf�rsitul POST (Power On Self Test). Rolul lui este de a stabili o leg�tur� �ntre componenta hardware (procesor, hard-disk, memorie) si software. Desi avea un rol important, Io.sys era destul de rudimentar... El oferea suport doar pentru lucrurile de baz� (lucrul cu procesorul/�ntreruperi, lucrul cu hard-discul, discheta, tastatura si monitorul). Alte dispozitive care puteau exista �n sistem trebuiau s� foloseasc� propriile drivere (programe ce fac leg�tura �ntre software si hardware).
Msdos.sys era �nc�rcat de Io.sys si de obicei initializa mediul DOS. �n versiunile mai noi de DOS, acest fisier a fost redus si nu mai contine dec�t initializarea unor variabile globale de sistem. De exemplu, asa arat� un Msdos.sys �n Windows 98:
[Paths]
WinDir=C:\WINDOWS
WinBootDir=C:\WINDOWS
HostWinBootDrv=C
UninstallDir=C:\
[Options]
BootMulti=1
BootGUI=1
;
;The following lines are required for compatibility with other programs.
;Do not remove them (MSDOS.SYS needs to be >1024 bytes).
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxa
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxb
; C�teva r�nduri au fost omise...
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxs
BootWarn=0
DoubleBuffer=1
AutoScan=1
�n continuare sunt prelucrate fisierele de configurare config.sys si autoexec.bat. Dup� parcurgerea lor este �nc�rcat interpretorul de comenzi, command.com. Dac� fisierele de configurare lipsesc, sistemul este �nc�rcat cu configuratia minim�.
Rolul interpretorului de comenzi este s� preia si s� execute comenzi de la utilizator. El contine unele comenzi predefinite (copy, del, cd, dir, etc), iar comenzile pe care nu le g�seste intern sunt c�utate pe calea implicit� si dac� tot nu sunt g�site, e afisat mesajul Bad command or filename. Pe piat� exist� mai multe interpretoare de comenzi, ce pot �nlocui cu succes command.com-ul, acestea oferind �n plus comenzi suplimentare sau o usurint� mai mare �n folosire (de exemplu NDOS.com sau 4DOS.com). F�r� interpretor de comenzi, sistemul porneste, dar nu poate primi si executa comenzi (afiseaz� un prompt prin care cere specificarea interpretorului de comenzi).
Deoarece la �nceput sistemul DOS transfera fiec�rui program controlul total asupra calculatorului, �n prezent este destul de dificil pentru versiunile DOS s� impun� restrictii pe sistem. Asta �nseamn� c� sistemul DOS nu prea poate mentine controlul asupra sistemului - dac� un program se blocheaz�, el va bloca �ntreg sistemul!
Din p�cate, problemele nu se termin� aici... Deoarece sistemul DOS nu reusea s� se impun�, majoritatea programelor care aveau nevoie de resurse sau de un mediu stabil, "�nl�turau" temporar sistemul DOS si �si porneau propriul sistem de control, iar c�nd terminau lucrul, reactivau sistemul DOS. Lipsa restrictiilor si a controlului f�cea ca sistemul s� se poat� bloca si din cauza unui bug dintr-un program...
�napoi la �nceputSistemul DOS initial recunostea si functiona doar cu 640k de memorie RAM (care erau considerati suficienti pentru orice program �n 1981). Totusi, pe m�sur� ce au ap�rut programe noi, a fost nevoie de mai mult� memorie, iar sistemul DOS a fost nevoit s� apeleze la programe suplimentare pentru a putea accesa aceast� memorie. Pentru sistemul DOS exist� mai multe tipuri de memorie:
Pentru a putea folosi memoria extins� si expandat�, sistemul DOS trebuie s� �ncarce un manager de memorie (cele incluse sunt himem.sys si emm386.exe). Aici, memoria era �mp�rtit� �n "pagini" de 64k si era copiat� �n memoria conventional� dac� programul avea nevoie de ea. Dac� programul nu folosea pe moment o "pagin�" de memorie din memoria conventional�, aceasta era transferat� temporar �n memoria extins�/expandat� si astfel se elibera memorie conventional�. Problema cu acest sistem era c� e destul de limitat si �ncet.
Toate programele DOS se �ncarc� si se execut� �n memoria conventional�. Folosirea memoriei extinse/expandate e practic un "truc" folosit de programatori. Unele programe prefer� memoria extins�, altele memoria expandat�, iar altele vin cu propriul manager de memorie si �si administreaz� resursele individual (e mai eficient). De exemplu Microsoft Windows 3.1 are nevoie de himem.sys pentru a se putea �nc�rca, iar unele jocuri dezactiveaz� managerele de memorie si �ncarc� DOS4GW (un manager de memorie protejat�).
Principalele probleme legate de memorie pe care le are sistemul DOS sunt date de lipsa memoriei conventionale. Dup� pornirea sistemului, toate programele �si las� "amprenta" �n memoria conventional� si astfel s-ar putea ca anumite programe s� dea eroare la pornire. Pentru a vedea c�t� memorie mai aveti liber� puteti apela comanda mem (De exemplu: C:\>mem). Pentru a face rost de mai mult� memorie conventional� liber� sunt dou� optiuni:
Principalele fisiere de configurare ale sistemului DOS sunt config.sys si autoexec.bat. Ele sunt responsabile de initializarea unor dispozitive speciale (cd-rom, plac� de sunet, scanner, etc), de stabilirea unor variabile globale sau de rularea unor programe.
Un model de config.sys pentru MS-DOS 6.2x
�n primul r�nd, liniile care �ncep cu rem sunt comentarii si nu sunt interpretate de sistem.
Prima parte a fisierului config.sys configureaz� programele care gestioneaz� memoria extins� si pe cea expandat� (himem.sys pentru memoria extins� si emm386.exe pentru cea expandat�). F�r� ele sistemul nu ar avea acces la mai mult de 640k de RAM.
A doua parte a fisierului config.sys seteaz� anumite optiuni ale sistemului DOS. De exemplu stabilirea parametrului BUFFERS spune sistemului DOS c�te zone temporare de citire/scriere poate folosi pentru discuri. Parametrul FILES spune sistemului DOS c�te fisiere pot fi deschise simultan, iar LASTDRIVE defineste ultima liter� de disc disponibil� (cu c�t e mai mic�, cu at�t se economiseste mai mult� memorie)
A treia parte a fisierului config.sys initializeaz� driverele pentru dispozitive. Linia DEVICE �ncarc� dispozitivul �n memoria conventional�, iar linia DEVICEHIGH �ncarc� driver-ul �n memoria superioar� (pentru a libera memoria conventional�).
Ultima parte a fisierului config.sys stabileste interpretorul de comenzi (command.com). Aceast� linie poate lipsi, si sistemul va porni cu intepretorul implicit (c:\command.com).
Din config.sys pot lipsi anumite comenzi (chiar toate), si astfel se poate stabili o alt� configuratie. �n sistemele Windows fisierul config.sys a fost redus si e recomandabil s� fie chiar gol. El mai exist� doar pentru compatibilitatea cu programele mai vechi. Totusi, e bine s� aveti la �ndem�n� un fisier gata configurat pentru a putea porni sistemul �n mod DOS �n mod eficient. Iat� un exemplu:
![]() |
ATENTIE! Dac� config.sys �ntr-un mediu Windows contine linia DOS=SINGLE, sistemul va porni de fiecare dat� �n mod DOS, f�r� a porni sistemul Windows! |
Fisierul autoexec.bat e responsabil pentru stabilirea variabilelor globale ale sistemului si pornirea unor programe (de configurare sau rezidente �n memorie). Iat� un exemplu de autoexec.bat pentru DOS 6.2x
Scopul comenzilor este urm�torul:
| @ECHO OFF | �mpiedic� afisarea pe ecran a comezilor lansate �n fisier, de exemplu, la lansarea comenzii "SET BLASTER = A220 I5 D1 T4", pe ecran nu se va vedea acel r�nd! Comanda ECHO mai are rolul de a afisa text pe ecran, de exemplu "ECHO Ms-Dos te salut�!" duce la afisarea pe ecran a textului "Ms-Dos te salut�!" | ||
| SET BLASTER = A220 I5 D1 T4 | Seteaz� variabila BLASTER. Aceast� variabil� este folosit� �n special de jocuri pentru a seta sunetul. Valorile au urm�toarea semnificatie:
|
||
| SET TEMP = C:\Temp | Seteaz� directorul temporar folosit de sistem | ||
| PROMPT $P$G | Determin� modul �n care arat� promptul sistemului (C:\>). Acesta poate fi modificat s� arate, de exemplu, si ora curent� prin comanda PROMPT [$t]$P$G iar promptul ar afisa "[18:17:56.32]C:\>" | PATH=C:\Dos;C:\Windows;C:\; | Este o variabil� foarte important�, ce contine calea c�tre directoarele cele mai importante. Dac� �ncercati s� lansati �n executie un program si acesta nu este �n directorul curent, interpretorul de comenzi �l va c�uta si �n directoarele din aceast� list� |
| LH /S C:\Windows\smartdrv.exe 2048 | �ncarc� utilitarul smartdrv.exe �n memoria superioar�. Acest utilitar faciliteaz� lucrul cu discurile (ofer� acces rapid la date). | ||
| LH C:\Windows\Mscdex.exe /s /d:MSCD001 | Activeaz� CD-ROM-ul, folosind configuratia din config.sys | ||
| C:\Nc\Nc.exe | Lanseaz� �n executie utilitarul nc.exe (Norton Commander) |
Pentru a afla mai multe despre comenzile din fisierele bat consultati documentatia dos (help.com). Documentatia pentru Dos 6.22 este distribuit� cu acest fisier si poate fi downloadata de aici (458KB).
Pentru sistemul Windows (95, 98) e indicat ca fisierul autoexec.bat s� fie gol sau s� contin� doar linia "PATH=...". E totusi indicat s� aveti la �ndem�n� un autoexec.bat configurat pentru a putea folosi sistemul si �n mod DOS.
De exemplu, fisierul autoexec.bat pe care �l folosesc �n mod DOS arat� cam asa:
Sistemul DOS a introdus un sistem de fisiere propriu care s-a r�sp�ndit si mai exist� si azi �n sistemele actuale. Primele versiuni de DOS lucrau cu sistemul FAT12 (FAT - File Allocation Table) care era limitat doar la discuri de sub 32MB. Versiunea DOS 3.3 a introdus sistemul FAT16 (cunoscut si sub numele de FAT) ce putea recunoaste discuri de p�n� la 2GB. Din cauza unor restrictii ale BIOS-urilor mai vechi, sistemele nu puteau folosi dec�t discuri de p�n� la 512MB. Principalele caracteristici ale sistemelor FAT12/FAT sunt faptul c� nu fac distinctia �ntre caractere mici si caractere mari (fisierul autoexec.bat e acelasi cu AUTOEXEC.BAT sau AutoExec.Bat) iar numele fisierelor respect� regula 8.3 (8 caractere pentru numele fisierului - f�r� spatii iar 3 caractere pentru extensie).
Odat� cu aparitia Windows 95 OSR2 si MS-Dos 7.1 a ap�rut si suportul pentru FAT32, un sistem de fisiere aparent f�r� limite si care ofer� suport pentru nume lungi de fisiere (255 de caractere + spatii). Totusi, un disc FAT32 nu va fi recunoscut de un MS-DOS mai mic ca 7.1, dar un disc FAT12 va fi recunoscut de un MS-DOS mai nou.
Sistemul FAT12 mai este folosit si �n prezent pentru lucrul cu discuri mici (�n special dischete), sistemul FAT mai este folosit pe discuri mai mici de 512MB, iar �n Windows-urile moderne sistemul de fisiere este FAT32 (sau NTFS pentru Windows NT/2000/XP).
Principalele utilitare care administreaz� sistemul de fisiere sunt:
![]() |
ATENTIE! Formatarea duce la pierderea tuturor datelor de pe acea partitie! |
![]() |
ATENTIE! Utilitarul poate sterge partitii! |
Mai multe informatii despre aceste utilitare g�siti �n help-ul sistemului (help.com)
�napoi la �nceputSistemul DOS stabileste tipul unui fisier prin extensia lui. Extensia este ultima parte din numele unui fisier, delimitat� de numele acestuia printr-un punct (.). De exemplu fisierul bootsect.dat are numele bootsect iar extensia dat. �n sistemul DOS extensia are maxim 3 caractere, iar acest lucru s-a p�strat si �n Windows, unde extensile au de obicei 3 caractere.
Iat� principalele tipuri de fisiere:
| *.exe | Fisiere executabile standard. |
| *.com | Fisiere executabile ce contin imaginea programului. Practic continutul fisierului este copiat direct �n memorie si astfel rezult� programul care ruleaz�. Principalul dezavantaj este acela c� sunt limitate ca memorie. Sunt folosite de obicei pentru a lansa programe mai mari (cum ar fi win.com) |
| *.bat | Fisiere de comenzi (batch). Contin o list� cu comenzi ce sunt executate �n ordine �n mod automat. Au posibilitatea de a folosi variabile, structuri repetitive si de verificare (for, if). Seam�n� cu un limbaj de programare (�n special cu Qbasic), dar este mult mai simplu si mai limitat. |
| *.txt | Fisiere text. Pot fi editate cu utilitarul edit.com |
| *.sys | De obicei sunt drivere de sistem, dar pot si fisiere de configurare. |
| *.dat | Contine diferite date folosite de un anumit program |
| *.cfg | De obicei e fisier de configuratie, dar nu �ntotdeauna �n mod text |
| *.zip *.arj | Arhive de diferite tipuri. MS-DOS nu ofer� suport nativ pentru ele asa c� trebuie s� folositi un program de dezarhivare |
| *.bak | Fisier back-up (copie de sigurant�) |
| *.tmp | Fisier temporar |
Mai exist� si alte extensii de fisiere, dar ele sunt folosite de obicei de alte programe (cum ar fi MS Windows).
�napoi la �nceputWildcards - acesta este numele dat caracterelor care �nlocuiesc alte caractere. �n sistemul DOS caracterul * �nlocuieste oric�te caractere din numele unui fisier (inclusiv nici un caracter). De exemplu comanda del *.txt va sterge toate fisierele cu extensia txt indiferent de nume, din directorul curent. Pentru a sterge toate fisierele care �ncep cu fis si au extensia txt puteti da comanda del fis*.txt. Sintagma *.* reprezint� toate fisierele din directorul curent, indiferent de nume sau extensie. Mai exist� un caracter de �nlocuire, dar care �nlocuieste un singur caracter din numele fisierului. Acest caracter este "?". De exemplu, pentru a sterge toate fisierele care au al doilea caracter p si al treilea caracter al extensiei t puteti da comanda del ?p*.??t. Cele dou� semne de �ntrebare din extensie nu pot fi �nlocuite cu * pentru c� si fisierul api32.bt ar corespunde descrierii! Puteti experimenta cu wildcard-urile, dar v� recomand s� folositi comanda dir �n loc de del :)
Iat� o list� cu principalele comenzi DOS si rolul lor. Majoritatea comenzilor suport� wildcard-uri.
Not�: Majoritatea comenzilor pot oferi informatii despre cum pot fi folosite. Pentru a vizualiza acest mini-help, tastati: nume_comand� /? . (De exemplu copy /?).
| Comand� | Observatii |
| copy surs� destinatie | Copiaz� fisierul surs� in destinatie. De exemplu copy C:\dos\fisier1.txt a:\ va copia fisierul fisier1.txt din C:\dos �n directorul r�d�cin� al dischetei A:. |
| cd director | Comut� pe directorul nou. De exemplu cd C:\windows\system va trece automat �n directorul C:\windows\system dac� exist�. Comanda cd docs comut� �n directorul docs pornind de la directorul curent (adic� dac� comanda e dat� �n directorul C:\dos\test, se va ajunge la directorul C:\dos\test\docs). Pentru a ajunge la directorul superior dati comanda cd .., pentru a ajunge la directorul r�d�cin� dati comanda cd \, iar pentru a afisa directorul curent, dati doar comanda cd |
| dir | Afiseaz� continutul directorului curent. Dac� dati dir C:\windows va fi afisat continutul directorului windows. Pentru a afisa toate fisierele (si cele ascunse) ordonate dup� nume, folositi parametrii /a /o: dir /a /o. Pentru a afisa continutul directorului pagin� cu pagin�, ad�ugati si parametrul /p: dir /p. |
| ren surs� destinatie | Mut�/redenumeste fisierul �n calea specificat�. Ex: ren C:\windows\win.com win.bak |
| md nume_director | Creeaz� un director (si directoarele intermediare dac� e nevoie) |
| del nume_fisier | Sterge fisierul/fisierele respectiv(e). NU sterge directoare! |
| rm nume_director | Sterge directorul respectiv NUMAI dac� este GOL! |
| deltree nume_director | Sterge directorul respectiv, fisierele din el si subdirectoarele lui. Pentru a nu cere confirmare la fiecare fisier, folositi parametrul /y: deltree /y C:\dir |
| edit | Porneste Microsoft Editor - un program mic dar puternic pentru editarea fisierelor text. Are interfat� grafic� intuitiv� |
| type fisier.txt | Afiseaz� pe ecran continutul fisierului respectiv. Folositi comanda type c:\fisier.txt |more pentru a afisa fisierul pagin� cu pagin�. |
| help.com | Porneste sistemul Help pentru DOS. Aici puteti g�si multe informatii despre comenzi si exemple complexe. Sistemul Help pentru DOS 6.22 e inclus cu acest fisier. |
| dosshell | Porneste programul MS DosShell - o interfat� grafic� nereusit� pentru DOS. Mai bine folositi Norton Commander sau Dos Navigator |
Pentru mai multe informatii consultati help-ul sistemului DOS (help.com). Unele comenzi prezentate mai sus s-ar putea s� nu functioneze �n versiuni DOS mai noi sau mai vechi. Ele au fost preluate din MS-DOS 6.22. Versiunile de DOS ulterioare sunt mai limitate si s-ar putea s� nu contin� toate comenzile.
�napoi la �nceputDesi a trecut mult� vreme de la lansarea oficial� a ultimei versiuni de DOS, el nu a murit. Mai exist� �nc� programe care lucreaz� (eficient) �n mod DOS (utilitare de restaurare, lucru cu discuri, etc.) precum mai exist� calculatoare destul de slabe pentru a rula Windows 95. Din acest motiv a continuat un timp productia de software pentru MS-DOS. De exemplu, pe site-ul www.mpeg.org exist� utilitare ce ruleaz� �n mod DOS si redau fisiere MP3! Totusi, principala lui utilitate �n ziua de azi este ca sistem de operare alternativ ce poate fi folosit c�nd nu mai merge Windows-ul.
Din p�cate site-uri suport nu prea mai exist� - orice problem� aveti, trebuie s� �ncercati un motor de c�utare pe web (de exemplu www.google.com). Cu sigurant� veti g�si ceva util!
�napoi la �nceput