Introducere in sisteme de operare


Introducere
Un sistem de calcul este format din următoarele componente:
a) componenta hard – formată din CPU, memorie şi dispozitiv de I/O – pune la
dispoziţie resursele de calcul;
b) aplicaţiile de program – definesc modul în care sunt utilizate resursele hardware
pentru a rezolva problemele de calcul ale utilizatorilor;
c) sistemul de
operare – controlează şi coordonează utilizarea resurselor hard de
către diverse aplicaţii de program;
d) utilizatorii – persoanele ce exploatează sistemul de calcul.
Un sistem de
operare este un program ce gestionează resursele hard ale unui
computer, oferă un suport pentru aplicaţiile de program şi asigură interfaţa dintre utilizatorii
computerului şi resursele hard.

Plecând de la definiţia anterioară se pot identifica următoarele
module ale unui sistem
de operare:
a) interfaţa cu utilizatorul – constituită din comenzi şi apeluri sistem. Comenzile
sunt introduse direct de utilizatori (de la terminale sau alte dispozitive de
introducere) şi sunt prelucrate de interpretorul de comenzi înainte de a ajunge la
sistemul de
operare. Apelurile sistemelor folosite direct de către programatorii de
sistem şi indirect de către programatorii de aplicaţii, apar în programe şi se
declanşează în timpul executării acestor programe. Interfaţa la nivel de comenzi
determină modul de acceptare de către utilizatori a unui nou sistem de
operare.
b) gestionarea fişierelor – fişierele reprezintă forma sub care se păstrează pe termen
lung informaţia în
sisteme de calcul. Gestionarea fişierelor tratează aspecte legate
de crearea şi ştergerea fişierelor, controlul accesului la fişiere, citirea / scrierea
informaţiilor din / în fişiere, organizarea colecţiei de fişiere, etc. Gestiunea
fişierelor reprezintă o componentă importantă a unui sistem de
operare
faptului că, în ultimul timp, se pune accent pe securitatea informaţiilor.
c) gestionarea perifericelor – incorporează toate aspectele operaţiilor de I/O
asociate perifericilor: pregătirea operaţiei, lansarea cererilor de transfer de
informaţie, controlul transferului propriu-zis, tratarea erorilor, etc. Gestionarea
anumitor periferice presupune interacţiunea cu sistemul de întreruperi de procesor
a transferurilor de informaţie.
d) gestionarea memoriei – acest modul controlează utilizarea memoriei interne şi a
memoriei externe dedicată extinderii capacităţii memoriei interne. Memoria
internă este utilizată de sistemul de
operare şi de programele utilizator. Datorită
posibilităţii că mai multe programe utilizator să fie simultan în memorie, modulul
de gestionare a memoriei trebuie să rezolve probleme de protecţie şi / sau
cooperare între aceste programe sau între programe şi sisteme de operare, precum
şi probleme de împărţire a memoriei disponibile între programele solicitate.
e) tratarea erorilor – este activitatea de detectare şi, în măsura posibilului, de
revenire din erori pentru continuarea lucrului. Modul de revenire din erori depinde
de cauza erorii şi de complexitatea sistemului de
operare.
f) gestionarea sistemului – este modulul responsabil de utilizarea sistemului de
operare ca întreg, printre funcţiile sale numărându-se ajustarea caracteristicilor
sistemului de
operare la un anumit sistem de calcul, punerea la dispoziţie a unor
date statistice referitoare la comportarea sistemului şi a unor mecanisme prin care
sistemul poate fi acordat pentru obţinerea celor mai bune performanţe posibile.


Functiile sistemului de operare: 
Pentru a îndeplini rolul de interfaţă între hardware ţi utilizatori, un sistem de operare trebuie să fie capabil îndeplinească următoarele funcţii:

1. Oferirea posibilităţii de lansare în execuţie a programelor de aplicaţie. In acest sens, sistemul de operare trebuie să dispună de:

- un editor de texte
- un translator
- un editor de legături

2. Alocarea resurselor necesare executării programelor, se realizează prin identificarea: programelor ce se execută, a necesarului de memorie, a dispozitivelor periferice ţi a cerinţelor privind protecţia datelor.

3. Facilităţi pentru compresia datelor, sortare, interclasare, catalogarea şi întreţinerea bibliotecilor, prin programele utilitare disponibile.

4. Planificarea execuţiei lucrărilor după anumite criterii, pentru utilizarea eficientă a unitaţii centrale de prelucrare.

5. Asistarea execuţiei programelor prin comunicaţia sistem calcul-utilizator, atât la nivel hardware, cât şi la nivel software.

Componentele sistemului de operare:
Majoritatea sistemelor de operare, pentru a răspunde rolului de interfaţă hardware utilizatorii, sunt organizare pe două niveluri:

- nivelul fizic, care este mai apropiat pe partea hardware a sistemului de calcul, interferând cu aceasta prin intermediul unui sistem de înteruperi.

- nivelul logic, care este mai apropiat de utilizator, interferând cu acesta prin intermediul unor comenzi, limbaje de programare, utilitare, etc.

Potrivit acestor două niveluri, sistemele de operare cuprind în principal două categorii de programe:

- programe de control ţi comandă, cu rolul de coordonare şi control a tuturor funcţiilor sistemelor de operare, cum ar fi: procese de intrare-ieşire, execuţia întreruperilor, comunicaţia hardware-utilizator;

- programe de servicii(prelucrări), care sunt executate sub supravegherea programelor de comandă ţi control, fiind utilizate de programator pentru dezvoltarea programelor sale de aplicaţie.

Dezvoltari ale sistemelor de operare: 
Primele sisteme de operare realizau prelucrarea pe loturi de programe. Comunicarea operaţiilor ce urmau să se realizeze se făcea prin intermediul unui limbaj de comandă care permitea interpretarea instrucţiunilor adresate sistemului, precum şi tratarea situaţiilor de eroare. Sistemele de acest tip funcţionau în regim de monoprogramare.

UCP(unitatea centrală de prelucrare) poate executa numai o instrucţiune într-o anumită cuantă de timp ţi nu poate opera decât cu date ce se găsesc în memoria internă; dacă dispozitivele periferice de intrare sunt lente în furnizarea datelor sau programelor către memoria internă, UCP trebuie să aţtepte transferul datelor/programelor în memoria internă de a începe execuţia programului.