Parteneriatul dintre DOS - Windows referat



Parteneriatul dintre DOS - Windows


Putem spune ca dualitatea dintre sistemele DOS si Windows s-a nascut in momentul in care s-a simtit nevoia utilizarii unei interfete grafice de exploatare tip GUI pentru programele sistemului de operare DOS. Motivele principale pentru care Microsoft si-a pus problema inlocuirii sistemului de operare DOS cu o interfata grafica de exploatare, iar apoi cu un sistem grafic de operare au fost:



sistemul DOS nu oferea multitasking

aplicatiile scrise sub DOS nu puteau schimba liber informatii intre ele

exploatarea sistemului DOS era greoaie, interfata cu utilizatorul fiind la nivel de comanda (existind reguli precise de sintaxa, multi parametri, puctuatie adecvata)

concurenta facuta de Apple - MacIntosh care si-a dotat echipamentele de calcul cu sisteme de operare performante ce admiteau atit multitasking-ul, cit si exploatarea interfetei la nivel grafic

Trecerea de la DOS la Windows nu s-a facut brusc si radical, ci a existat o tranzitie de

la un sistem catre celalalt. Astfel utilizatorii de DOS au putut exploata in continuare prin Windows resursele calculatorului prin vechea interfata DOS cu care erau familiarizati.

Evolutiv, convergenta sistemelor DOS si Windows a avut trei puncte de incidenta, facind ca sistemele sa nu functioneze concurent ci prin parteneriat. Astfel se pot delimita doua momente:

parteneriatul dintre DOS si Windows, in care rolul sistemului DOS era determinant, iar Windows era o simpla interfata grafica de exploatare pentru mediul DOS

parteneriatul Windows - DOS, in care Windows detine toate atuurile unui sistem de operare, iar DOS-ul este simulat pentru compatibilitatea aplicatiilor scrise sub el cu aplicatiile scrise sub Windows.


Relatia DOS-Windows

Parteneriatul DOS-Windows poate fi privit in sensul evolutiei sistemului Windows din

doua puncte de vedere si anume: exploatarea aplicatiilor pe 16 biti si 32 de biti. Sistemul Windows, asa cum am mai aratat era un program de exploatare a aplicatiilor situat deasupra sistemului DOS. Windows avea aproape toate atributele unui sistem de operare cu exceptia functiilor de gestiune a fisierelor - pe de o parte si de gestiune a intrarilor si iesirilor prin citirea/scrierea pe periferice - pe de alta parte.

Sistemul Windows utiliza toate serviciile de acces la disc pentru citire/scriere, prin intermediul sistemului DOS. Absolut toate aceste cereri ale lui Windows treceau prin sistemul BIOS ale sistemului de operare DOS.

Din punctul de vedere al utilizatorului, lucrul cu serviciile DOS inseamna ca de fiecare data cind Windows trebuie sa aiba acces la disc pentru operatii de citire/scriere sau pentru gestiunea fisierelor, sistemul de calcul reactiona mai lent.

Explicarea acestei situatii consta in faptul ca Windows functioneaza in mod protejat pentru ca multitasking-ul sa fie valabil, in timp ce sistemu DOS functioneaza in mod real, iar pentru a se realiza schimbul de informatii cu hard-discul este necesara comutarea bilaterala intre aceste doua moduri de functionare a procesorului in relatie cu memoria.

De fiecare data cind Windows dorea sa aiba acces la unitatea disc, trebuia sa lanseze o cerere intr-un format inteligibil catre sistemul DOS pentru a se comuta operarea din modul protejat in cel real pentru DOS. Inainte de a se comuta operarea din modul real in cel protejat, Windows verifica daca poate indeplini solicitarea aplicatiei beneficiare a transferului, cu date existente in memoria extinsa. Daca informatiile cautate nu erau gasite, Windows lansa cererea de comutare, trebuind apoi sa astepte pentru ca DOS sa execute operatiunea solicitata. In tot acest interval toate aplicatiile lucrau simultan erau fireste suspendate datorita faptului ca procesorul nu putea executa simultan mai multe operatii in modul de exploatare real, ci doar in mediul protejat.

De fiecare data cind Windows comuta din nou modul protejat in cel real, sistemul putea deveni instabil, in sensul ca orice aplicatie care ar putea fi dubios conceputa ar putea bloca procesorul. Blocarea sistemului in acest caz poate fi explicata prin faptul ca sistemul de operare, in modul real de exploatare nu alerteaza procesorul daca o aplicatie creeaza o greseala de memorie.

Revenind la cererea de scriere/citire pe disc din partea lui Windows (dupa ce s-a comutat in mod real), sarcina gasirii informatiei pe disc este lasata in seama BIOS-ului, care acceseaza controllerul de disc si prin aceasta citeste sau scrie informatia pe respectivul suport. Informatiile de care avea nevoie Windows sunt copiate in memoria conventionala intr-o zona in care se putea avea acces in mod protejat, iar apoi se comuta procesorul din modul real inapoi in modul protejat.

In concluzie acest mecanism greoi de citire/scriere prin acelasi BIOS era posibil datorita faptului ca sistemele DOS si Windows (la inceputurile sale), functionau pe o platforma software de 16 biti.

Problema compatibilitatii intre gestiunea aplicatiilor pe 16 biti sub DOS si pe 32 biti sub Windows a fost rezolvata prin renuntarea la componenta BIOS si inlocuirea ei cu un driver (FastDisk) care era capabil sa o emuleze.

Driverul FastDisk lucra pe 32 de biti in mod protejat si emula componenta BIOS (care lucra si ea la rindul ei pe 16 biti), utilizind cod-masina scris in mod protejat. Prin aceasta imbunatatire adusa Windows nu numai ca elimina in cele doua sensuri cele doua tranzitii in mod real si protejat dar putea sa execute mai multe operatii in regim multitasking in timpul accesului la disc. Reducerea numarului de tranzitii spre sistemul DOS, prin neapelarea la BIOS a dus la cresterea simtitoare a vitezei de lucru sub Windows, dar si cresterea stabilitatii sistemului.


Relatia Windows - DOS


Parteneriatul dintre Windows si DOS si-a schimbat total sensul in conditiile transformarii vechiului sistem Windows dintr-o platforma de exploatare a aplicatiilor intr-un veritabil sistem de operare care cuprinde de data aceasta functia de gestiune a fisierelor.

Windows '95/'98 a eliminat problema accesului in mod real, doarece a inclus toate functiile sistemului de operare intr-o arhitectura de 32 biti. Procedura de exploatare a fisierelor in mod protejat a fost numita PMFATFS ( sistem de fisiere FAT protejate). Prin aceasta procedura Windows '95/'98 utilizeaza un sistem de acces la disc complet diferit fata de predecesorii sai. Noul sistem de gestiune a fisierelor functioneaza in exclusivitate in mod protejat, reducind la aproape zero sansele de blocare a sistemului datorita problemelor legate de disc si imbunatatind considerabil viteza de acces la disc.

In sistemul de gestiune al fisierelor, arhitectura Windows '95/'98 include mai multe componente stratificate. Fiecare strat ofera posibilitatea de a adauga software de la alti producatori in vederea utilizarii unor sisteme de fisiere si echipamente particulare.

Citeva dintre cele mai importante straturi sunt:

installable file system manager este un program de gestiune a sistemului instabil de fisiere. Aceasta este stratul superior al sistemului de fisiere care receptioneaza solicitarile aplicatiei si transfera controlul catre driverul corespunzator al sistemului de fisiere

file system driver reprezinta driverul sistemului de fisiere. Acest strat ofera suportul pentru un nume de fisier mai mare si permite functionarea stabila a sistemului in mod protejat lucru care face ca Windows '95 sa fie mai bun decit predecesorii sai

I/O subsystem reprezinta subsistemul de intrari/iesiri care directioneaza cererile primite de la FSD la diverse drivere ale echipamentelor periferice

Sistemul de operare Windows '95 are capacitatea de a emula sistemul DOS pentru a mentine compatibilitatea intre cerintele noului sistem de operare pe 32 de biti si vechile aplicatii scrise sub DOS si exploatate pe 16 biti.

In momentul lansarii unei aplicatii DOS sau in momentul comutarii sistemului in MS-DOS Prompt, Windows '95/'98 apeleaza un set de servicii care permit trecerea procesorului in modul de exploatare real si tratarea cererii respective in sistemul DOS printr-un BIOS virtual. Prin BIOS are loc toate solicitarile de acces la unitatea de disc, prin controllerul acesteia.

Atunci cind sub Windows '95/'98 se executa simultan programe pe 16 si pe 32 de biti sistemul de operare se ocupa in primul rind de separarea celor doua tipuri de aplicatii utilizind scheme diferite de gestionare a memoriei. Aplicatiile de 16 biti lucreaza in cadrul propriei lor zone de masina virtuala in timp ce restul aplicatiilor de 32 de biti utilizeaza pe deplin capacitatile de adresare a memoriei de catre procesor.

Comunicarea intre aplicatiile scrise pe 16 biti cu aplicatiile de 32 de biti se realizeaza printr-un mecanism de conversie a datelor dintr-un format de 16 intr-un format pe 32. Windows '95/'98 utilizeaza un strat denumit 'stratul de conversie' pentru a permite aplicatiior pe 16 biti sa comunice cu cele pe 32 de biti.

Cele trei componente interne ale lui Windows: Kernel, GDI, si User sunt responsabile de acest mecanism de translatie a datelor din registrii de 16 biti in registrii de 32 de biti si invers. Mecanismul de translatare a continutului registrilor presupune ca stratul de conversie sa construiasca o noua stiva de memorie care sa se conformeze necesitatilor aplicatiei care receptioneaza datele. Transformarea adreselor de memorie din 16 in 32 si invers este o operatione laborioasa care solicita mult procesorul si implicit incetineste viteza de lucru.