DOS

Pentru alte sensuri, vedeți Dos (dezambiguizare).
DOS
Dată lansare inițială  Modificați la Wikidata

DOS (Disk Operating System) este un sistem de operare single-tasking (o singură aplicație rulată simultan), single-user (un singur utilizator posibili) bazat pe linia de comandă.

Au existat mai multe variante de DOS, cum ar fi DR-DOS, ROM-DOS, si FreeDOS. Dar cea mai populară variantă a fost MS-DOS. Până la apariția Windows 95 a fost cel mai popular sistem de operare pe arhitectura x86. [necesită citare]

Atunci când firam IBM a vrut să facă modelul 5150, au avut nevoie de un sistem de operare. Crezând că firma Microsoft deține sistemul de operare CP/M au vrut să îl licențieze de la Microsoft, dar Bill Gates le-a spus că CP/M este de fapt deținut de către firma Digital Research. IBM a încercat să licențieze CP/M de la Digital Research, dar cele două firme nu au putut ajunge la o înțelegere. În același timp, firma Seattle Computer Products dezvolta un sistem de operare asemănător cu CP/M deoarece la vremea aceea, CP/M nu era compatibil cu procesorul pe care Seattle Computer Products voia să-l folosească. Acest sistem s-a numit inițial QDOS(Quick and Dirty Operating System) din cauze asemănărilor cu CP/M, dar a fost redenumit în 86-DOS. IBM s-a întors la Microsoft și au întrebat dacă nu puteau face ei un sistem de operare. Bill Gates a acceptat, a cumpărt 86-DOS pentru pentru 50000 de dolari americani, și l-a redenumit în MS-DOS(MicroSoft Disk Operating System). Într-un an, au fost vândute licențe de MS-DOS către peste 70 de firme.

Sistemul original (1.0) nu suporta directoare, discuri dure, dischete de 3,5 țoli (sau dischete de 5,25 țoli cu densitate ridicată), și se baza pe încărcare de pe casetă audio în sistemul original.

Cu toată evoluția ulterioară (adăugarea suportului pentru directoare, spre exemplu), MS-DOS a devenit, la sfârșitul anilor '80, un sistem depășit. Calculatoarele aveau mai mult de 1 MB de RAM, necesitând un drivere speciale pentru a putea accesa mai multă memorie și programare foarte atentă pentru a putea accesa memoria, utilizatorii doreau multi-tasking (să ruleze mai multe aplicații deodată) - lucru realizat în manieră ingenioasă de programatori, prin folosirea abuzivă a mecanismului de încărcare driveri, în programe "Terminate and stay resident" care asigurau o formă foarte rudimentară de multi-tasking coordonativ, iar sistemele aveau tot mai multe componente și periferice, necesitând driveri greu de instalat și folosit. Creșterea popularității interfețelor grafice și a programelor WYSIWYG (ce vezi pe ecran este și după tipărire), pentru care DOS nu era pregătit, în calculatoare precum Macintosh (pentru care Microsoft a fost unul din cei mai importanți furnizori de software în anii '80) sau Amiga a fost însă principalul motiv al înlocuirii DOS. Prima încercare de a aduce o interfață grafică sistemelor DOS a fost GEM, dar a fost un eșec. Încercările inițiale ale Microsoft au fost de asemenea eșecuri - Windows 1 și 2, interfețe grafice care rulau "deasupra" DOS nu au impresionat utilizatorii. OS/2, un alt sistem de operare, conceput de IBM și Microsoft la sfârșitul anilor '80, a ratat și el, în parte din cauza condițiilor stricte de licențiere spre terți, în parte datorită cerințelor mari de sistem (inclusiv un grad foarte ridicat de compatibilitate cu IBM care ducea la eliminarea "clonelor" și "compatibilelor"), dar și din cauza lipsei de interes din partea Microsoft. De-abia Windows 3 (un hibrid pe 16 biți cu memorie protejată, rulând parțial deasupra DOS - adică se comporta pentru DOS ca orice program obișnuit - dar având propriile syscall-uri, proprii driveri și un fel de nucleu propriu) a fost un pas înainte pentru utilizatorii sistemelor x86.

MS-DOS și Windows 9x

[modificare | modificare sursă]

Popularitatea seriei Windows 3.0 (continuată de 3.1 și 3.11, tot hibrizi bazați pe 3.0) a dus la dezvoltarea liniei Windows 9x, un sistem pe 32 de biți complet multi-tasking, dar în continuare parțial hibrid și a liniei Windows NT, un sistem complet nou. Astfel, MS-DOS nu a dispărut complet decât după eliminarea Windows ME, la apariția Windows XP (bazat pe Windows 2000 și NT). În Windows 95, 98 si Me, MS-DOS este folosit ca bootloader, și pentru utilizarea driverilor și syscall-urilor in mod real. DOS era folosit și ca interpretor standard de comenzi (Command Prompt), și ca mediu inițial de instalare. Ultima versiune de DOS, integrată in Windows Me a fost MS-DOS 8.00 în 2000. Ultima versiune disponibilă separat (fără Windows) a fost MS-DOS 6.22, în 1994.

DOS este folosit astăzi într-o nișă redusă de aplicații - ca sistem embedded (încorporat în aplicații industriale) și în sisteme existente care încă nu au fost înlocuite (sisteme legacy). În aplicații industriale însă, continuă să piardă teren în fața sistemelor moderne precum BSD, GNU/Linux sau QNX, care oferă mai multe avantaje (multi-tasking, POSIX) cu un impact minim, iar în sistemele legacy este înlocuit odată cu uzura fizică sau morală a sistemelor (un exemplu de sistem legacy înlocuit recent[când?] sunt aplicațiile oferite de Ministerul Finanțelor contribuabililor pentru calculul diverselor taxe și impozite, care au fost portate recent de pe MS-DOS pe Windows sau pe web[necesită citare]).

În versiunile de Windows derivate din Windows NT (2000, XP, Server 2003, Vista, Server 2008, 7, Server 2012 8, 8.1, 10, 11), DOS nu mai există, dar interfața cu linia de comandă are comenzi cu sintaxă similară (deși este completată cu un număr de comenzi suplimentare). Programele de DOS rulează cu un grad limitat de compatibilitate pe versiunile de Windows derivate din Windows NT pe 32 de biți(folosind NTVDM) și deloc în cele pe 64 de biți. Pentru rularea aplicațiilor MS-DOS (jocuri vechi, programe vechi încă utile, sisteme-muzeu etc.) se pot folosi emulatoare cum ar fi DosBox[1] care oferă un sistem DOS virtual, special pentru aceste nevoi (inclusiv încetinirea procesorului pentru jocuri vechi). Dacă se dorește un sistem MS-DOS perfect fidel, se poate instala o copie într-o mașină virtuală[1].

Pornirea și inițializarea sistemului

[modificare | modificare sursă]

La inițializarea sistemului, se citește ora și data curentă din BIOS (în cazul în care acestea nu există sau nu au fost setate, utilizatorul este întrebat data și ora curentă), urmat de procesarea CONFIG.SYS (un fișier prin care se puteau inițializa driveri, precum driverii de memorie, de CD-ROM etc.), după care se proceseaza AUTOEXEC.BAT (execută un script batch pre-definit). După acestea, sistemul prezintă utilizatorului linia de comanda (prompt-ul) - de format [Partiție curentă][:][Directorul curent][simbolul promptului, adică >] - exemplu :

C:\> 

În versiunile mai vechi care nu suportau directoare se arăta doar litera discului și simbolul promptului:

A> 

Sistemele MS-DOS mai noi de 3.0 nu au o rutină predefinită de închidere. La închiderea sistemului, se apasă pur și simplu butonul de stingere de pe carcasă. Sistemele mai vechi de 3.0 ofereau comanda park, pentru poziționarea capului de citire a hard-discului într-o poziție sigură, după care se acționa butonul de curent. După 3.0, tehnologia hard-diskurilor a făcut această operațiune nenecesară.

Caracteristici principale

[modificare | modificare sursă]
  • Nucleu : Monolitic (cu posibilitatea "ocolirii" lui prin folosirea întreruperilor de BIOS și a call-urilor directe), Single Tasking, Single User, 8/16 biți
  • Sistem de fișiere : FAT12 (1.0 și pentru dischete), FAT16 (sistem principal), FAT32 (suport limitat in DOS 7.1, 7.9 și 8.0)
  • Capacitate maximă pe disc : 2 GB (FAT16), 32 GB (FAT32)
  • Management de memorie : maxim 640 KB în mod standard, extindere cu drivere speciale. Nu există suport pentru memorie virtuală
  • Interfață : Exclusiv linie de comandă (foarte rudimentară comparativ cu liniile de comandă de astăzi, și chiar cu cele din perioadă - fără autocompletare, cu pipe-uri si redirecționări foarte reduse). Unele programe care rulau peste DOS (cum ar fi GEM sau Windows) aveau o interfață grafică.
  • Număr de utilizatori : Foarte popular la sfârșitul anilor '80, începutul anilor '90, astăzi de importanță istorică (și nișe - aplicații industriale, emulare și aplicații legacy, dar și acestea în scădere)
  • Predecesori : CP/M, QDOS, CP/M86, anumite influențe din UNIX prin XENIX (directoare, numele unor comenzi)
  1. ^ Pentru asta se pot folosi programe cu ar fi QEMU sau VirtualBox