37
MINISTERUL EDUCAŢIEI, CERCETĂRII, TINERETULUI SI SPORTULUI Grupul Şcolar “ GHEORGHE LAZĂR” BAIA MARE LUCRARE DE SPECIALITATE PENTRU EXAMENUL DE CERTIFICARE A COMPETENŢELOR PROFESIONALE Coordonator: Absolventă: Prof. : Scurtu Cosette Clasa: 1

Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

Embed Size (px)

Citation preview

Page 1: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

MINISTERUL EDUCAŢIEI, CERCETĂRII, TINERETULUI SI SPORTULUI

Grupul Şcolar “ GHEORGHE LAZĂR”

BAIA MARE

LUCRARE DE SPECIALITATE PENTRU EXAMENUL DE CERTIFICARE A COMPETENŢELOR

PROFESIONALE

Coordonator: Absolventă:

Prof. : Scurtu Cosette

Clasa:

-2011-1

Page 2: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

TITLUL LUCRĂRII:

COMPONENTELE ŞI FUNCŢIILE UNUI SISTEM DE OPERARE

CALIFICAREA PROFESIONALĂ:

TEHNICIAN OPERATOR TEHNICĂ DE CALCUL

PROFIL TEHNIC, FILIERĂ TEHNOLOGICĂ

2

Page 3: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

CUPRINS:

1. Sisteme de operare; defini�ii, componente, clasific�ri..........................................................pag4

2. Resursele unui sistem de calcul; gestionarea resurselor........................................................... pag6

3. .Strategiile de alocare difer n func ie de sistemul de operare i de resurs ...................�� � � � pag7

4. .Componenta de comand i control a sistemului de operare............................................... pag7��

5. .Componenta de servicii a sistemului de operare..................................................................... pag8

6. Obiectivele i func iile unui sistem de operare..................................................................... pag9� �

7. .Clasificarea sistemelor de operare din punctul de vedere al execu iei proceselor................ pag10�

8. .Clasificarea sistemelor de operare dup gradul de interac iune cu utilizatorul................... pag11� �

9. .Clasificarea sistemelor de operare dup configura ia hardware deservit ......................... pag12� � �

10. Sistem de operare.................................................................................................................. pag14

11. Sisteme operaţionale............................................................................................................. pag16

12. Funcţiile unui sistem de operare.......................................................................................... pag16

13. Funcţiile şi componentele unui sistem de operare............................................................... pag18

14. Programe de comandă – control.......................................................................................... pag18

15. Sisteme operaţionale........................................................................................................... pag18

16. Programe de servicii pentru dezvoltarea programelor de aplicaţie..................................... pag19

17. Funcţiile şi componentele unui sistem de operare.............................................................. pag21

18. Funcţiile şi componentele unui sistem de operare............................................................. pag22

19. Sisteme operaţionale.......................................................................................................... pag24

3

Page 4: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

1.Sisteme de operare; defini�ii, componente, clasific�ri

Sistemul de operare reprezint� ansamblul de programe care asigur� utilizarea optim� a resurselor fizice �i logice ale unui sistem de calcul. El are rolul de a gestiona func�ionarea componentelor hardware ale sistemului de calcul, de a coordona �i controla execu�ia programelor �i de a permite comunicarea utilizatorului cu sistemul de calcul. Folosirea hardware-ului unui sistem de calcul ar fi dificil� �i ineficient� �n lipsa unui sistem de operare. Pe scurt, sistemul de operare este componenta software care coordoneaz� �i supravegheaz� �ntreaga activitate a sistemului de calcul �i asigur� comunicarea utilizatorului cu sistemul de calcul.

Din punctul de vedere al interac�iunii cu componentele hardware ale sistemului de calcul �i dup� modul de implementare a software-ului, sistemul de operare este organizat pe dou� niveluri:

a. nivelul fizic include componenta firmware a sistemului de calcul; acest nivel ofer� servicii privind lucrul cu componentele hardware ale sistemului de calcul �i cuprinde acele elemente care depind de structura hardware a sistemului. Tot �n nivelul fizic sunt incluse programe a c�ror execu�ie este indispensabil�, de exemplu programul care lanseaz� �nc�rcarea automat� a sistemului de operare, la pornirea calculatorului.

La acest nivel, comunicarea cu sistemul de calcul se realizeaz� prin intermediul sistemului de �ntreruperi, prin care se semnaleaz� anumite evenimente ap�rute �n sistem; la apari�ia unei �ntreruperi, controlul este dat unor rutine de pe nivelul urm�tor al sistemului de operare;

Exemplu : la sistemele de calcul compatibile PC, componenta sistemului de operare de pe nivelul fizic este componenta ROM-BIOS. Aceasta include programe grupate dup� func�ia lor �n :

programele care se execut� la pornirea sistemului de calcul : programul POST (Power-On Self-Test), care verific� starea de func�ionare a sistemului de calcul �i programele de ini�ializare a activit��ii sistemului (rutina de �nc�rcare a primului sector al discului sistem) ;

rutinele care fac posibil� utilizarea componentelor fizice ale sistemului de calcul, rutine numite drivere fizice ; ele ofer� servicii pentru lucrul cu configura�ia hardware standard a sistemului de calcul : consola, tastatura, imprimanta, perifericele standard �i ceasul sistemului. Avantajul acestei solu�ii este c� asigur� independen�a software-ului de pe nivelul logic fa�� de caracteristicile constructive ale componentelor hardware de baz�, ele fiind tratate unitar, prin intermediul driverelor.

b. nivelul logic include partea de programe a sistemului de operare �i ofer� utilizatorului mijloacele prin care poate exploata sistemul de calcul; comunicarea utilizatorului cu sistemul de calcul se realizeaz� prin comenzi adresate sistemului de operare sau prin intermediul instruc�iunilor programelor pe care le execut�; invers, comunicarea se realizeaz� prin intermediul mesajelor transmise de sistemul de operare c�tre utilizator.

Programele nivelului logic adreseaz� dispozitivele hardware prin intermediul programelor nivelului fizic al sistemului de operare �i din acest motiv ele sunt independente de structura hardware a

4

Page 5: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

sistemului de calcul : nivelul fizic constituie o interfa�� �ntre hardware �i nivelul logic al sistemului de operare.

Din punct de vedere func�ional, programele sistemului de operare se �mpart �n dou� categorii :

a. Componenta de comand � � i control , care cuprinde programe ce au rolul de a asigura utilizarea eficient� a resurselor sistemului de calcul.

b. Componenta de servicii , care cuprinde programe destinate minimiz�rii efortului uman implicat de utilizarea sistemului de calcul.

Func�ia sistemului de operare de optimizare a exploat�rii unui sistem de calcul este �mp�r�it� �ntre cele dou� componente, conform schemei din Figura 2.1.

Accesibilitatea, diversitatea �i num�rul componentelor software cre�te de la st�nga la dreapta, �n diagram�, �n timp ce num�rul �i nivelul de specializare al utilizatorilor acestor programe scade de la st�nga la dreapta.

At�t pentru proiectarea c�t �i pentru utilizarea lor, componentele software se sprijin� pe alte componente software, aflate la st�nga lor, �n diagram�.

5

Page 6: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

2.Resursele unui sistem de calcul; gestionarea resurselor

Pentru a executa un program, �ntr-un sistem de calcul secven�ial cu program memorat, este necesar� �nc�rcarea acestui program �n memoria intern� a sistemului de calcul. Sub controlul unit��ii centrale de prelucrare (UCP) sunt executate, secven�ial, instruc�iunile programului. Dup� caz, executarea unei instruc�iuni program poate presupune:

alocarea unit��ii aritmetico-logice (UAL), pentru efectuarea de opera�ii aritmetice sau logice asupra datelor prelucrate de program;

alocarea unui dispozitiv periferic, pentru realizarea unui schimb de informa�ii �ntre acesta �i memoria intern� afectat� programului;

alocarea de spa�iu �n memoria extern� a sistem de calcul, pentru stocarea informa�iilor manevrate de program;

accesarea unei anumite structuri de date (de exemplu un fi�ier din memoria extern�);

apelul, pentru execu�ie, a unui alt program, �nc�rcat �n memoria intern� sau memorat �n memoria extern� a sistemului de calcul, etc.

�ntotdeauna, execu�ia unui program presupune alocarea unei anumite zone din memoria intern� a sistemului de calcul.

�ntotdeauna, execu�ia unui program presupune afectarea unei perioade din timpul de lucru al UCP.

Resursele sistemului de calcul, pe care sistemul de operare le pune la dispozi�ia utilizatorului, se constituie din totalitatea componentelor fizice sau logice ale sistemului de calcul, care pot fi solicitate, la un moment dat, �n timpul execu�iei unui program.

Execu�ia unui program se define�te ca o succesiune de procese care se realizeaz� sub controlul sistemului de operare.

Procesul reprezint� o secven�� de activit��i care se execut� la un moment dat �n sistemul de calcul �i care se caracterizeaz� prin:

prelucr�rile care se realizeaz�, determinate de secven�a de instruc�iuni care controleaz� procesul

contextul de lucru asupra c�ruia ac�ioneaz� procesul, prin intermediul prelucr�rilor, �i care include resursele alocate procesului.

Pentru a realiza alocarea unei resurse la un proces, sistemul de operare trebuie s� aib� r�spuns la urm�toarele �ntreb�ri, dup� caz:

dac� resursa cerut� exist� �n sistem dac� ea este disponibil�

c�t din resurs� este disponibil�

6

Page 7: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

pentru c�t timp poate fi alocat� resursa

dac� resursa este deja alocat� altui proces, dac� ea mai este necesar� procesului c�ruia �i este alocat�.

Rezult� astfel func�iile care trebuiesc �ndeplinite de componenta sistemului de operare cu rol �n gestionarea resurselor sistemului de calcul:

1. eviden�a resurselor sistemului de calcul �n fiecare moment, prin �nregistrarea fiec�rei resurse, a st�rii ei (alocat� sau liber�) �i a gradului ei de ocupare (c�t din resurs� este alocat);

2. implementarea unor algoritmi de alocare a resursei, conform unei strategii de alocare stabilite; o strategie de alocare trebuie s� r�spund� la �ntreb�rile:

c�rei solicit�ri i se aloc� resursa

c�t din resurs� se aloc�

�n ce moment se face alocarea

pentru c t timp se face alocarea resursei.�

3.Strategiile de alocare difer n func ie de sistemul de operare i�� � � de resurs�

alocarea efectiv a resursei, cu actualizarea informa iilor legate de starea resursei;� �

dezalocarea resursei care poate fi f cut :� �

la ini iativa procesului care a solicitat-o, atunci c nd ea nu mai este necesar procesului� � � la ini iativa sistemului de operare, pentru a fi alocat i altor procese.� ��

Aceast ultim variant este utilizat numai de anumite tipuri de sisteme de operare.� � � �

4.Componenta de comand i control a sistemului de operare��

Activitatea de lansare n execu ie a unui program, activitatea de gestionare a aloc rii resurselor � � �sistemului de calcul, pe toat durata execut rii programului, ca i opera iile efectuate la � � � �

ncheierea execu iei acestuia, sunt func ii realizate de componenta de comand i control a � � � ��sistemului de operare.

Func iile componentei de comand i control ale sistemului de operare sunt:� ��

planificarea, lansarea i urm rirea execu iei programelor� � � gestionarea resurselor sistemului de calcul

depistarea i tratarea evenimentelor deosebite care apar n timpul execu iei programelor� � �

7

Page 8: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

asigurarea protec iei informa iilor manevrate de diverse programe (aceste programe pot fi � �ale sistemului de operare sau programe utilizator).

Conform acestor func ii, componenta de comand i control a sistemului de operare va include:� ��

nucleul sistemului de operare, cu func ia de coordonare a activit ii sistemului de calcul � ��i a celorlalte componente ale sistemului de operare. Aceast component este rezident � � � �n memoria intern pe toat durata func ion rii sistemului de calcul i se mai � � � � � �

nume te � monitorul rezident al sistemului de operare. c te o component de gestionare pentru fiecare tip de resurs din sistem.� � �

Func ia de protec ie a informa iei ntre procese i func ia de tratare a erorilor se realizeaz � � � � � � �n mod specific, pentru fiecare tip de resurs , n cadrul componentei de gestionare a resursei.� � �

5.Componenta de servicii a sistemului de operare

Componenta de servicii a sistemului de operare s-a dezvoltat odat cu cerin ele utilizatorilor � �sistemelor de calcul. Gradul de accesibilitate al unui sistem de calcul, ca i complexitatea sarcinilor �pe care utilizatorul le poate rezolva cu ajutorul lui, sunt influen ate de existen a i eficien a � � � �programelor de sistem incluse n componenta de servicii.�

Programele de servicii se execut sub supravegherea programelor de comand i control, ca orice � ��program de aplica ie.�

Aceast component ofer servicii diferite, de la un sistem de operare la altul, sau chiar ntre � � � �variante diferite ale aceluia i sistem de operare. Componenta de servicii a unui sistem de operare �poate include:

unul sau mai multe programe nc rc tor pentru sistemul de operare, care lanseaz � � � �automat programe ale sistemului de operare la pornirea sistemului de calcul ;

programe de tip interpretor de comenzi ale sistemului de operare, adic acele programe care �preiau comenzile adresate sistemului de operare de c tre utilizator, asigur nd astfel � �comunicarea ntre utilizator i sistemul de operare;� �

func ia de gestionare a dialogului cu utilizatorul, fie n mod comand , oferind mecanisme � � �de editare a comenzilor, fie n mod grafic, prin intermediul unei interfe e grafice cu � �utilizatorul (GUI - Graphical User Interface) ;

func ia de nl n uire prin date a comenzilor sistemului de operare (mecanismul pipe), de � � � �interpretare a comenzilor sistemului de operare agregate sub forma unor macrouri sau a unor fi iere de comenzi�  ;

func ia de asisten � ��� on line  pentru sistemul de operare, cunoscut ca Help-ul � �sistemului de operare;

func ia de tipul � � plug and play  care ofer facilit i de autodetec ie a � � �� �echipamentelor nou instalate n sistem i permite reconfigurarea hardware, cu u urin , � � � ��

8

Page 9: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

a sistemului, ca i notificarea schimb rii configur rii sistemului, de exemplu prin c derea � � � �unui echipament din sistem;

func ia care ofer suportul pentru utilizarea limbii na ionale, adic adaptarea � � � �informa iilor cu caracter na ional (semn monetar, marc zecimal ) conform rii � � � � ��selectate ;

func ii pentru configurarea personalizat a mediului de lucru cu sistemul de calcul, de � �exemplu pentru utilizatori cu op iuni speciale de manevrare a echipamentelor (tastatur , � �mouse, etc.)

6.Obiectivele i func iile unui sistem de operare� �

Obiectivele generale ale unui sistem de operare sunt:

automatizarea opera iilor standard n toate etapele de exploatare a sistemului de calcul;� �

minimizarea efortului uman pentru utilizarea sistemului de calcul;

optimizarea utiliz rii resurselor sistemului de calcul;�

cre terea eficien ei globale n utilizarea sistemului de calcul prin:� � �

o cre terea vitezei de execu ie a prelucr rilor� � �

o reducerea timpului de r spuns al sistemului la solicit rile utilizatorilor� �

o cre terea gradului de utilizare a resurselor prin utilizarea lor la capacitate maxim . � �

Func iile prin intermediul c rora sistemul de operare realizeaz aceste obiective sunt:� � �

func ia de instalare automat a unui nou sistem de operare pe un sistem de calcul;� �

func ia de nc rcare n memoria intern a sistemului de operare, la pornirea sistemului � � � � �de calcul;

func ia de configurare dinamic a sistemului de operare, conform cu modific rile � � �intervenite n structura hardware sau cu necesit ile de exploatare a sistemului. De � ��exemplu, sistemul de operare DOS se poate configura dinamic prin intermediul fi ierului �CONFIG.SYS care se consult la fiecare nc rcare a sistemului de operare i care � � � �permite instalarea altor drivere de echipamente dec t cele standard i definirea unor � �parametri de func ionare ai sistemului, permi nd astfel modificarea, extinderea sau � ��

mbun t irea capacit ilor de func ionare ale sistemului de operare, n cadrul � ��� �� � �arhitecturii de baz a sistemului de calcul;�

9

Page 10: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

efectuarea opera iilor de intrare / ie ire la nivel fizic, pentru a permite utilizatorului tratarea � �echipamentelor periferice la nivel logic, adic independent de caracteristicile constructive ale �lor. Aceast func ie permite degrevarea utilizatorului de sarcina trat rii specifice a � � �fiec rui tip de echipament periferic n parte. De exemplu, orice tip de imprimant este � � �tratat n acela i mod de c tre utilizator; caracteristicile specifice fiec rui tip n parte � � � � �sunt tratate de programul specializat de accesare la nivel fizic al echipamentului, numit driver de imprimant i de componenta sistemului de operare care trateaz opera iile de ie ire �� � � �prin intermediul imprimantei: driverul portului paralel ;

oferirea unei interfe e cu utilizatorul, prin intermediul unui limbaj specific, numit limbajul de �comand al sistemului de operare; prin intermediul acestui limbaj, utilizatorul transmite �comenzi sistemului de operare; ele sunt traduse i lansate n execu ie de programul � � �interpretor de comenzi al sistemului de operare. n sistemele de operare mai noi, interfa a cu� � utilizatorul este asigurat folosind metode grafice evoluate i principii noi de comunicare, � �rezultatul fiind o modalitate mult mai prietenoas de dialog cu utilizatorul; o astfel de � �interfa se nume te interfa grafic cu utilizatorul (Graphical User Interface);�� � �� �

controlul execu iei programelor: sistemul de operare ncarc programul n memoria � � � �intern , pentru execu ie, l lanseaz n execu ie, urm re te execu ia n toate � � � �� � � � � �etapele sale i ncheie execu ia programului;� � �

gestionarea aloc rii resurselor sistemului de calcul: sistemul de operare gestioneaz alocarea � �timpului UCP, a memoriei interne, accesul la fi iere, accesul la echipamentele periferice,etc. �pe toat durata execu iei unui program, n scopul utiliz rii c t mai eficiente a acestor � � � � �resurse. n cazul n care este posibil executarea simultan a mai multor programe, � � � �sistemul de operare realizeaz alocarea resurselor ntre programe pe baza unor criterii de � �alocare, n scopul optimiz rii execu iei programelor, conform obiectivelor de eficien � � � ��de mai sus;

asigurarea protec iei ntre utilizatori, acolo unde sistemul de operare permite accesul � �concomitent al mai multor utilizatori (programe) la resursele sistemului de calcul, i �asigurarea protec iei ntre programe, fie c este vorba de programe utilizator sau programe� � � ale sistemului de operare. Aceast protec ie se refer la evitarea cazurilor de � � �interferen ntre mai multe programe n execu ie, care ar putea duce la alterarea ��� � �zonelor de program din memoria intern sau la alterarea, de c tre un program, a datelor � �utilizate de un alt program;

tratarea erorilor: sistemul de operare poate trata erori la nivelul ma inii fizice (de exemplu: �erori de citire / scriere n memoria extern , erori de acces la un echipament periferic, lipsa � �din configura ia sistemului de calcul a unui echipament, etc.) sau erori logice, care pot s � �apar n timpul execut rii unui program (de exemplu: opera ii interzise, ca �� � �

mp r irea la 0, tentativa de acces n zone protejate ale memoriei interne, tentativa de � � � �execu ie a unor instruc iuni privilegiate, etc.);� �

10

Page 11: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

func ii auxiliare, cum ar fi: contabilizarea activit ii sistemului de calcul, jurnalizarea � ��comenzilor adresate interpretorului de comenzi al sistemului de operare, jurnalizarea erorilor, etc.

7.Clasificarea sistemelor de operare din punctul de vedere al execu iei� proceselor

n general, programele utilizeaz n mod diferit resursele unui sistem de calcul (unele ocup mai � �� �pu in memorie intern dec t altele, unele execut mai multe opera ii de intrare/ie ire, timp � � � � � � �

n care UCP este utilizat mai pu in, altele fac prelucr ri complexe asupra datelor, utiliz nd � � � � �intens unitatea aritmetico-logic , etc). �

Pentru utilizarea eficient a resurselor sistemului de calcul, unele sisteme de operare pot gestiona �execu ia concurent� � a mai multor procese, asigur nd proceselor din sistem � accesul concurent la resursele sistemului sau partajarea resurselor. Aceasta nseamn c , la un moment dat, n � � � �sistem se pot afla n execu ie mai multe procese care concureaz ntre ele pentru accesul la � � ��resursele sistemului iar sistemul de operare gestioneaz resursele sistemului pentru satisfacerea c t � �mai multor cereri ale acestor procese pentru alocarea de resurse.

O caracteristic important a unui sistem de operare este m sura n care poate asigura execu ia � � � � �concurent a proceselor. Dup acest criteriu, sistemele de operare pot fi:� �

monotasking , care nu asigur execu ia concurent i nici partajarea resurselor ntre � � �� �mai multe procese. Sub controlul unui sistem de operare monotasking, la un moment dat, n �sistemul de calcul se poate executa un singur program; acesta r m ne activ din momentul � �lans rii lui n execu ie i p n la terminarea lui complet ; c t timp este n � � � � � � � � �execu ie, programul are acces la toate resursele sistemului de calcul. �

Exemplu: sistemele de operare MS-DOS i CP/M sunt sisteme de operare monotasking; n timpul � �execut rii unui program, sistemul de operare pierde controlul asupra sistemului, n favoarea � �programului aflat n execu ie, care preia controlul p n n momentul ncheierii execu iei � � � �� � �sale.

multitasking sunt acele sisteme de operare care asigur execu ia concurent a mai multor � � �procese care exist concomitent n sistem. � �

Exemplu: sistemele de operare Windows, Unix sunt sisteme multitasking. Aplica ia Windows 3.x �rulat sub sistemul de operare monotasking MS-DOS permite exploatarea n regim multitasking a � �aplica iilor Windows.�

n plus fa de sistemele de operare monotasking, pentru un sistem de operare multitasking � ��trebuiesc definite strategiile de alocare a resurselor la procesele concurente, strategii care vor fi folosite de componentele sistemului de operare pentru gestionarea resurselor.

11

Page 12: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

8.Clasificarea sistemelor de operare dup gradul de interac iune cu� � utilizatorul

Un sistem de operare are rolul de a interfa a comunicarea ntre utilizator i sistemul de calcul. � � �Tendin a actual n cererea utilizatorilor este de a cre te at t gradul de interac iune cu � �� � � �sistemul de calcul c t i gradul de accesibilitate al interfe ei cu sistemul de calcul; aceste dou � � � �tendin e, n general contradictorii, determin cre terea complexit ii componentei sistemului � � � � ��de operare care asigur interfa a cu utilizatorul.� �

Pe de alt parte, din punctul de vedere al gradului de utilizare i al accesibilit ii sistemului de � � ��calcul, o caracteristic important este num rul de utilizatori care pot avea acces, la un moment � � �dat, la sistem.

Din punctul de vedere al accesului utilizatorilor la sistem i al gradului de interac iune cu sistemul, � �sistemele de operare pot fi:

seriale , acele sisteme de operare pentru care gradul de interac iune cu utilizatorul, n timpul� � prelucr rilor, este nul. De cele mai multe ori, interfa a dintre sistemul de operare si utilizator� � nu dispune de un limbaj de comand accesibil utilizatorului obi nuit, motiv pentru care � �comunicarea dintre utilizator i sistem nu este direct ci mediat de persoane specializate � � �ca operatori de calculator. n timpul execu iei lucr rii sale, utilizatorul pierde total � � �controlul asupra prelucr rii; el furnizeaz datele care se prelucreaz odat cu formularea � � � �cererii de prelucrare i prime te rezultatele prelucr rii la ncheierea execu iei.� � � � �

interactive : sistemele de operare care permit comunicarea direct ntre utilizator i �� �sistemul de calcul, prin intermediul unui limbaj dedicat acestui scop (limbajul de comand al �sistemului de operare sau interfaa grafic utilizator). n plus, utilizatorul poate urm ri � � �modul n care se execut programul s u i poate influen a, n anumite condi ii, � � � � � � �execu ia acestuia. Un sistem de operare interactiv presupune o arhitectur a sistemului de � �calcul care s cuprind echipamente standard de intrare/ie ire dedicate comunic rii � � � �utilizatorului cu sistemul de operare (terminale I/O); aceste echipamente cuprind, de obicei, o tastatur , ca echipament standard de intrare i un dispozitiv de vizualizare a informa iilor � � �de ie ire (un display sau o mini- imprimant ). Sistemele de operare interactive pot fi:� �

o monouser , c nd comunicarea cu sistemul de calcul este posibil , la un moment dat, � �numai pentru un singur utilizator, prin intermediul consolei sistemului de calcul;

o multiuser , c nd sistemul de operare poate gestiona comunicarea concomitent cu � �mai mul i utilizatori, conecta i la sistemul de calcul prin intermediul echipamentelor � �terminale de intrare/ie ire.�

Exemplu: MS-DOS este un sistem interactiv monouser; Unix este un sistem interactiv multiuser.

9.Clasificarea sistemelor de operare dup configura ia hardware� � deservit�

12

Page 13: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

Se obi nuie te mp r irea sistemelor de calcul n trei categorii mari, n func ie de puterea � � � � � � � �lor de prelucrare a informa iei i de capacitatea lor; corelat cu aceast mp r ire se clasific � � �� � � �

i sistemele de operare, dup configura ia hardware pe care o deservesc. Structura sistemului de � � �operare este influen at de structura sistemului de calcul pentru c , n general, s-a c utat ca � � � � �punctele mai slabe hardware s fie compensate prin func ii suplimentare asigurate de software, n � � �particular, de sistemul de operare. Pe de alt parte, un sistem de calcul puternic, ce permite �prelucr ri complexe, are nevoie de un sistem de operare la fel de puternic, capabil s asigure o � �bun coordonare a activit ii sistemului de calcul i o gestionare optim a resurselor acestuia. � �� � �

Dup configura ia hardware deservit , sistemele de operare sunt:� � �

sisteme de operare pentru microcalculatoare: o sunt puternic interactive, cu un limbaj de comand accesibil sau cu interfa � ��

grafic utilizator; �

o unele sunt monouser i monotasking (MS-DOS), altele multitasking (Windows), �eventual i multiuser (Unix);�

o sunt u or configurabile, oferind proceduri automate pentru nc rcarea sau pentru � � �instalarea sistemului de operare;

o ocup un spa iu redus n memoria intern ;� � � �

o suport dezvolt ri pentru a permite conectarea n re ele de calculatoare sau ca � � � �terminale la sisteme de calcul mari;

o au func ia de gestionare a informa iei dezvoltat n direc ia manevr rii unui � � �� � �num r mare de fi iere de dimensiuni mici;� �

sisteme de operare pentru minicalculatoare:

o sunt interactive, multiuser i multitasking;�

o folosesc un limbaj de comand pentru utilizatori aviza i;� �

o procedurile de nc rcare la conectarea sistemului i de instalare a sistemului de � � �operare sunt mai laborioase;

o sunt mai rigide, n cazul modific rii configura iei hardware;� � �

o asigur un sistem de priorit i de execu ie dezvoltat;� �� �

o orientate pentru lucrul cu mai mul i utilizatori, oferind un sistem complex de �protec ie a informa iei;� �

o orientate pentru lucrul cu multe terminale, put nd ndeplini func ia de concentrator� � � de date;

sisteme de operare pentru calculatoare mainframe:

o seriale sau interactive, multitasking;

o limbaj de comand pentru utilizatori specializa i;� �

13

Page 14: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

o gestioneaz un num r mare de echipamente periferice;� �

o orientate pentru prelucr ri complexe i pentru volume mari de date.� �

n prezent se constat tendin a de apropiere a performan elor microcalculatoarelor de cele ale � � � �calculatoarelor superioare lor, n paralel cu tendin a de apropiere a performan elor sistemelor de � � �operare pentru sisteme de calcul mari de cele ale sistemelor de operare pentru mini sau microcalculatoare.

n acela i timp, se realizeaz o integrare func ional tot mai accentuat a diferitelor tipuri de � � � � � �sisteme de calcul n platforme de lucru comune, de obicei prin conectarea acestora n re ele de � � �calculatoare. Cel mai elocvent exemplu n aceast direc ie este re eaua Internet care realizeaz � � � � �leg tura ntre cele mai diferite tipuri de sisteme de calcul, func ion nd sub controlul unor � � � �sisteme de operare diverse.

Din punctul de vedere al dezvolt rii sistemului de operare, tendin a actual este de dezvoltare a � � �sistemelor de operare portabile, adic acele sisteme de operare care func ioneaz pe platforme � � �hardware diferite. Un exemplu n acest sens este sistemul de operare UNIX.�

O alt direc ie este dezvoltarea de familii de sisteme de operare, de exemplu familia sistemelor de � �operare Windows, n care au fost dezvoltate sisteme de operare interactive, multitasking, asigur nd � �

i func iile pentru lucrul n re ea de calculatoare; ntre aceste sisteme de operare, unele sunt � � � � �specializate pentru un anumit mod de utilizare, de exemplu: Windows NT Server, pentru server de re ea sau Windows NT Workstation pentru sta ii de lucru din re ea.� � �

10.Sistem de operare

Un sistem de operare constă dintr-o colecţie integrată de programe de sistem, ce oferă

utilizatorului posibilitatea folosirii eficiente a sistemului de calcul, concurând la dezvoltarea

programelor de aplicaţie.

Se poate aprecia că un sistem de operare acţionează ca o interfaţa între componenta hardware a

unui sistem de calcul şi utilizator, reprezentat prin programele sale de aplicaţie (fig.1.1.).

Fig. 1.1. Sistemul de operare-interfaţă între hardware şi utilizator

14

Page 15: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

HARDWARE

SISTEM DE

OPERARE

NIVEL

FIZIC

NIVEL

LOGIC

···

PROGRAME

DE APLICAŢIE

(PA)

PA1

PA2

PAn

···

utilizator

utilizator

utilizator

comenzi

macroinstrucţiuni

limbaje de

programare

mesaje

Un sistem de calcul nu poate să prelucreze date fără să fie programat, un

program constând dintr-o succesiune de instrucţiuni ce converg către soluţia

15

Page 16: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

problemei ce se rezolvă.

Există două categorii de programe:

1) programe de aplicaţii care sunt destinate să rezolve probleme specifice; acestea

efectuează prelucrări ale datelor, în concordanţă cu cerinţele informaţionale;

2) programe de sistem destinate să coordoneze operarea circuitelor sistemului,

asistând la dezvoltarea programelor de aplicaţii; ele sunt proiectate să faciliteze

utilizarea eficientă a resurselor sistemului de calcul şi să ajute la dezvoltarea si

execuţia programelor de aplicaţii.

Programele de sistem sunt scrise pentru anumite categorii de sisteme de calcul şi

nu pot fi folosite pe orice calculator; sunt furnizate de către producătorii sistemelor

de calcul sau alte firme specializate, fiind astfel proiectate încât să corespundă unei

game variate de solicitări.

11.Sisteme operaţionale

Majoritatea sistemelor de operare sunt organizate pe două niveluri:

1) nivelul fizic care este mai apropiat de partea de hardware, interferând cu aceasta printr-un

sistem de întreruperi ce semnalizează anumite evenimente deosebite ce au loc în sistem; în acel

moment va da controlul unor rutine de pe nivelul logic în vederea tratării acestora şi al informării

utilizatorului despre cauzele care le-au generat.

2) nivelul logic este mai apropiat de utilizator, interferând cu acesta prin:

- comenzi ce specifică execuţia anumitor subfuncţii ale sistemului de operare;

- macroinstrucţiuni ce conduc la expandarea în programele de aplicaţii, a unor16

Page 17: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

macrodefiniţii cu funcţii speciale;

- limbaje de programare;

- mesaje către utilizator;

- întreruperi solicitate de către software.

12.Funcţiile unui sistem de operare

Pentru a îndeplini rolul de interfaţă între hardware şi utilizatori, un sistem de operare trebuie

să fie capabil a îndeplini următoarele funcţii:

1) oferirea posibilităţii de pregătire şi lansare în execuţie a programelor de aplicaţie (fig.1.2.);

în acest scop, un sistem de operare trebuie să dispună de cel puţin următoarele componente:

- un editor de texte pentru a introduce şi modifica un program sursă (PS) scris într-un

limbaj de programare;

- un translator pentru limbajul de programare folosit (asamblor, compilator sau

interpretor), care să traducă instrucţiunile programului sursă, într-o formă recunoscută

de sistemul de calcul (formă binară) - program obiect sau module obiect (PO);

- un editor de legături care să realizeze legătura dintre diverse module obiect, sau să

apeleze la module obiect din bibliotecile sistemului, respectiv la modulele obiect din

biblioteca utilizatorului - care au fost catalogate în prealabil, pentru a construi structura

pe segmente impusă de sistemul de calcul în vederea execuţiei programelor (program

obiect executabil-POE).

Odată construită structura pe segmente, programul va fi gata de execuţie, ceea ce va implica

încărcarea acestuia în memoria internă şi execuţia efectivă; componenta sistemului de operare ce

realizează acest deziderat se numeşte încărcător. Dacă această componentă lansează automat

execuţia programului după încărcarea în memoria internă, încărcătorul este de tip Load and Go.

2) alocarea resurselor necesare execuţiei programelor prin:

- identificarea programelor ce se execută şi a necesarului de resurse;17

Page 18: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

- alocarea memoriei interne şi a dispozitivelor periferice;

- identificarea şi protecţia colecţiilor de date.

3) acordarea unor facilităţi prin utilitare de interes general:

- gestiune cataloage (directori, subdirectori) şi fişiere;

- creare, modificare, copiere, mutare, ştergere, recuperare directori şi fişiere;

- sortare/interclasare;

- comprimare/decomprimare spaţiu pe suporturile de memorie externă;

- depistare şi eliminare viruşi informatici şi altele.

4) planificarea execuţiei mai multor programe (multiprogramare) după anumite criterii, în

vederea utilizării eficiente a unităţii centrale de prelucrare.

13.Funcţiile şi componentele unui sistem de operare

Pregătirea execuţiei programelor

5) coordonarea execuţiei mai multor programe ce se execută simultan, prin urmărirea

modului de execuţie a instrucţiunilor programelor, depistarea şi tratarea erorilor, lansarea în execuţie

a operaţiilor de intrare/ieşire şi depistarea eventualelor erori.

6) asistarea execuţiei programelor de către utilizator, prin comunicaţia sistem de

calcul-utilizator atât la nivel hardware cât şi la nivel software.

7) asigurarea organizării şi protecţiei datelor în memorie.

8) posibilitatea generării unui sistem de operare pe măsura configuraţiei existente.

18

Page 19: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

14.Programe de comandă - control

Sisteme de operare sunt alcătuite în principal, din două categorii de programe:

- programe de comandă-control având rolul de coordonare şi control al tuturor funcţiilor sistemului

de operare;

- programe de servicii care sunt executate sub supravegherea programelor de comandă-control, şi

sunt utilizate de programator pentru dezvoltarea aplicaţiilor.

Programele de comandă-control cunoscute şi sub numele de monitoare, supervizoare sau

executive, coordonează activitatea celorlalte componente ale sistemului de operare.

15.Sisteme operaţionale

Cele mai frecvent utilizate componente ale supervizorului sunt încărcate în memoria internă

încă de la generarea sistemului de operare, fiind păstrate în memoria internă pe tot parcursul

execuţiei aplicaţiilor de către sistemul de calcul; aceste programe se numesc rutine rezidente,

formând nucleul sistemului de operare; celelalte componente rămân în memoria externă fiind apelate

şi executate numai atunci când sunt solicitate de către nucleul sistemului de operare ( se numesc

rutine tranziente) asemenea oricărui program de aplicaţie (fig. 1.3.)

Fig. 1.3. Rutine rezidente şi rutine tranziente

Supervizorul iniţiază execuţia operaţiilor de intrare/ieşire pentru transferul componentelor

tranzitorii din memoria externă în memoria internă, fiind totodată responsabil de alocarea canalelor

de transfer (magistralele) pentru dispozitivele periferice de intrare/ieşire; de asemenea efectuează

controlul şi coordonarea unităţii centrale de prelucrare (CPU) pe parcursul recepţionării de mesaje

de la canalele prin care se execută transferul, a execuţiei programelor din memoria internă respectiv,

19

Page 20: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

a transmiterii de mesaje către dispozitivele periferice de intrare/ieşire prin intermediul magistralelor.

Dispozitivele periferice de intrare/ieşire trebuie să fie alocate aplicaţiilor care le solicită,

datele solicitate fiind transferate în memoria internă sub controlul sistemului de gestiune a

intrărilor/ieşirilor.

Programele de comandă control îndeplinesc trei funcţii majore:

a. administrarea resurselor fizice ale sistemului de calcul;

b. planificarea, lansarea şi urmărirea execuţiei aplicaţiilor;

c. depistarea şi tratarea evenimentelor deosebite ce apar în timpul execuţiei unei aplicaţii.

(detalii se regăsesc în capitolul 3.).

16.Programe de servicii pentru dezvoltarea programelor de aplicaţie

Programele de servicii se execută sub controlul programelor de comandă control ca orice

program de aplicaţie, având în componenţă programe care facilitează dezvoltarea programelor de

aplicaţii respectiv programe utilitare de interes general.

Principalele programe de care dispune orice sistem de operare pentru dezvoltarea unui

program de aplicaţie sunt: editoarele de texte, translatoarele de limbaje, editoarele de legături,

încărcătoarele şi depanatoarele.

Editoare de texte

Un editor de texte este un set de programe ce oferă posibilitatea introducerii, editării, şi

tipăririi de texte sub forma unor fişiere ASCII. Textele sunt alcătuite din caractere care se introduc

de la tastatură apărând în acelaşi timp şi pe monitor; erorile pot fi corectate uşor deoarece acestea

nu sunt încă tipărite pe hârtie.

Editoarele de texte au ca activitate principală, crearea şi editarea de texte; împreună cu

20

Page 21: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

hardware-ul, furnizează calea de urmat pentru vizualizarea, memorarea, editarea şi regăsirea textelor

create. Editoarele de texte mai performante, permit şi introducerea elementelor de grafică în text.

Deoarece documentaţia de utilizare a editoarelor de texte este voluminoasă, proiectanţii acestora au

prevăzut pentru cele mai frecvente funcţii, un sistem de Help ce constă în informaţii minime afişate

Programe de aplicaţie

Rutinele rezidente

(nuceul)

Rutinele tranziente

Alte rutine şi

programe de aplicaţie

Programe de servicii

Programe de comandă – control

(PCC)

Memoria internă Memoria externă

Încărcare

sistem de operare

Solicitări

ale PCC

17.Funcţiile şi componentele unui sistem de operare

Numele fişierului, pagina curentă, linia şi coloana în care se află cursorul, sunt permanent

afişate pe monitor în vederea orientării utilizatorului; textul poate fi memorat pe suport magnetic,

se poate refolosi şi modifica după necesităţi.

Editoarele de texte sunt componente ale sistemului de operare cu cea mai mare frecvenţa de

21

Page 22: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

utilizare, existând astăzi o mare varietate datorită serviciilor aduse pentru a degreva utilizatorul de

sarcini elementare cum sunt: despărţirea în silabe, alinierea textelor, paragrafelor, titlurilor,

sublinierea unor porţiuni din text, căutare unui şir de caractere şi editarea acestuia, indexarea

documentului, realizarea cuprinsului, etc.

Observaţii:

- un procesor de texte poate produce fişiere ASCII numai dacă include opţiunea out of ASCII

text;

limbajul Java foloseşte caractere ASCII reprezentate pe 16 biţi (caractere Unicode) ce includ

caracterele întâlnite la majoritatea limbilor străine

Translatoare de limbaje

Translatoarele de limbaje sunt componente ale programelor de servicii care traduc programe

sursă(PS) scrise de utilizator într-un limbaj de programare, în programe obiect(PO), a căror

instrucţiuni în limbaj maşină sunt recunoscute şi executate de sistemul de calcul.

Translatoarele de limbaje se divid în două categorii:

1) compilative care realizează numai traducerea PS ---> PO; acestea pot fi:

* asambloare - programe de servicii care traduc programe sursă scrise în limbaje de

asamblare specifice fiecărui sistem de calcul (masm, tasm);

* compilatoare - programe de servicii care traduc programe sursă scrise în limbaje evoluate,

universale (Pascal, C);

2) interpretative - care odată cu compilarea realizează şi execuţia programului (Basic).

Spre deosebire de asambloare, compilatoarele creează o formă intermediară arborescentă a

instrucţiunilor din programul sursă astfel:

- orice variabilă este un nod terminal al arborelui;

- orice operator creează un arbore binar a cărui ramură stângă este primul operand, iar cea din

dreapta este al doilea operand.

22

Page 23: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

18.Funcţiile şi componentele unui sistem de operare

(1) Analiza lexicală descompune PS în atomi lexicali (identificatori, cuvinte rezervate,

constante, operatori) pe care îi introduce în tabela de simboluri sub formă codificată.

(2) Analiza sintactică prin care şirul de atomi lexicali este analizat în privinţa depistării unor

structuri sintactice ca: expresii, liste, proceduri, plasându-le într-un arbore de derivare

(arbore sintactic).

(3) Analiza semantică foloseşte structura programului şi informaţiile din tabela de simboluri

pentru generarea unui grup de instrucţiuni simple cu format fix (codul intern); dacă arborele sintactic

nu respectă gramatica limbajului, semnalizează erori.

(4) Optimizarea codului presupune eliminarea redundanţelor, a lungimii şi variabilelor

inutile, în vederea unei execuţii mai eficiente.

(5) Generarea codului alocă zone de memorie pentru păstrarea datelor în timpul execuţiei,

alocă registre şi produce codul obiect.

(6) Gestiunea structurilor de date reprezintă o colecţie de proceduri care creează şi

actualizează baza de date cu care lucrează celelalte faze; în baza de date se găsesc tabelele

identificatorilor, a constantelor, a constructorilor, a cuvintelor cheie, a procedurilor standard, care

uneori sunt înglobate într-o unică tabelă de simboluri.

(7) Tratarea erorilor este realizată de o colecţie de proceduri ce sunt activate când se

depistează o eroare în program; utilizatorul primeşte mesaje de diagnostic iar compilatorul continuă

analiza sintactică pentru a depista alte erori.

O succintă abordare comparată a translatoarelor de limbaje conduce către următoarele

aspecte mai semnificative:

- asamblorul este determinat de limbajul maşină specific fiecărui sistem de calcul, iar compilatorul

23

Page 24: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

este specific unui anumit limbaj de programare independent de sistemul de calcul;

- compilatorul oferă posibilitatea scrierii de programe pentru orice sistem de calcul ce dispune de

compilatorul respectiv;

- asamblorul translatează o definiţie simbolică a programului sursă într-o singură definiţie din

programul obiect, în timp ce compilatorul o poate translata în mai multe definiţii din programul

obiect (memoria ocupată astfel de asamblor necesită mai puţin spaţiu, dar compilatorul este mai

puternic datorită includerii într-o definiţie sursă, a mai multor definiţii obiect);

- interpretorul este util în special, la controlul proceselor industriale ce se desfăşoară în timp real,

însă interpretarea este mai lentă decât compilarea;

- execuţia repetată a unui program este facilitată de compilator care realizează translatarea o singură

dată, în timp ce interpretorul îl translatează de fiecare dată.

Există componente ale sistemului de operare ce sunt concepute ca programe generalizate

care, în funcţie de necesităţile utilizatorului se pot adapta pentru a realiza un grup de funcţii; aceasta

se realizează în faza de asamblare, prin intermediul unui macrolimbaj care asigură generarea

secvenţelor de program (PS şi PO) specificate.

Macrolimbajul foloseşte macroinstrucţiuni care sunt instrucţiuni ale PS, care asigură prin

intermediul comenzilor, inserarea în PS a secvenţei de instrucţiuni în locul unde a apărut

macroinstrucţiunea; de remarcat este faptul că nu economiseşte decât timp utilizator.

Structura unei macroinstrucţiuni:

-început MACRO

-nume NNNN

-secvenţa instr.1

de ...

instrucţiuni instr.n

-sfârşit ENDM

24

Page 25: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

După definirea unei macroinstrucţiuni, utilizarea numelui NNNN este echivalentă cu

utilizarea secvenţei de instrucţiuni incluse în macroinstrucţiune.

19.Sisteme operaţionale

Macroasamblorul este componenta programelor de servici a sistemului de operare care tratează

macroinstrucţiunile, având ca activităţi de bază:

- recunoaşterea macrodefiniţiilor indicate prin MACRO, ENDM;

- memorarea definiţiilor macroinstrucţiunilor de care are nevoie pentru a le expanda la

un apel macro;

- recunoaşterea apelului macroinstrucţiunii cu secvenţa de instrucţiuni corespunzătoare.

- înlocuirea macroinstrucţiunii cu secvenţa de instrucţiuni corespunzătoare.

1.4.3. Editorul de legături

Structura externă a unui PS este alcătuită din secţiune, segment şi program.

Secţiunea este o unitate de program independentă constituită dintr-o secvenţă de definire a

datelor şi o secvenţă de instrucţiuni, ce asigură posibilitatea comunicării cu alte unităţi ale PS

(fig.1.6.).

Fig. 1.6. Comunicaţia dintre două secţiuni ale unui program sursă

Definirea datelor şi procedurilor servesc atât propriei secţiuni cât şi altor secţiuni.

Compilatorul asigură pe lângă generarea codului obiect şi informaţii de legătură între

secţiuni:

- informaţii de identificare (nume secţiune, punctul de intrare);

- informaţii de legătură.

Structura unei secţiuni după compilare este redată în fig.1.7.

Fig. 1.7. Structura unei secţiuni după compilare

Dicţionarul de legături rezultă în urma determinării de către compilator, a elementelor de25

Page 26: Componentele Si Functiile Unui Sistem de Operare Plincear Ioan

comunicaţie specificate în fiecare secţiune a PS, conţinând două tipuri de simboluri:

- externe - nedefinite în secţiune, cu adresa necunoscută;

- interne - definite în secţiune, dar referite din exteriorul acesteia.

Segmentul este o succesiune de secţiuni între care au fost rezolvate legăturile; acesta conţine:

- numele segmentului;

- punctul de intrare în segment;

- codul obiect al secţiunilor aranjate într-o anumită ordine.

Programul este o structură arborescentă de segmente (segment principal şi segmente

subordonate organizate pe substructuri); acesta este organizat într-o structură multifazică de către

editorul de legături, care pe baza numelor segmentelor din care este alcătuit programul şi a secvenţei

de secţiuni din care este compus fiecare segment, creează structura de program pe care o depune pe

suport extern (de obicei, hard-disk) de unde va fi ulterior încărcat în RAM pentru execuţie.

26