Documente Academic
Documente Profesional
Documente Cultură
Sisteme de operare
1
Sisteme de operare curs 13
3
Sisteme de operare curs 13
Există sute de alte sisteme de operare, specializate pentru tipuri de calculatoare (cele de mai
sus sunt pentru PC-uri; altele sunt pentru mainframe-uri etc.) sau pe tipuri de aplicaţii
(pentru procese industriale / procese în timp real, robotică etc.).
A doua sarcină, oferind o interfață de aplicație consistentă, este deosebit de importantă
dacă trebuie să existe mai mult de un anumit tip de calculator care utilizează sistemul de
operare sau dacă hardware-ul care alcătuiește calculatorul este posibil să fie schimbat
vreodată.
1
O interfața de programare a aplicațiilor (API) consistentă permite unui dezvoltator
de software să scrie o aplicaţie de pe un singur calculator și are un nivel ridicat de încredere
ca va rula pe un alt calculator de acelasi tip, chiar dacă cantitatea de memorie sau cantitatea
de depozitare este diferită pe cele două calculatore.
API este acronimul pentru interfața de programare a aplicațiilor, este un software
intermediar care permite la două aplicații să discute între ele. De fiecare dată când utilizați o
aplicație precum Facebook, trimiteți un mesaj instantaneu sau verificați vremea pe telefonul
dvs., utilizați un API.
Conceptul de thread (fir de executie )definește cea mai mică unitate de procesare ce
poate fi programată spre execuție de către sistemul de operare. Este folosit în programare
pentru a eficientiza execuția programelor, executând porțiuni distincte de cod în paralel în
interiorul aceluiași proces. Câteodata însă, aceste portiuni de cod care constituie corpul
threadurilor, nu sunt complet independente și în anumite momente ale execuției, se poate
întampla ca un thread să trebuiască să aștepte execuția unor instructiuni din alt thread,
pentru a putea continua execuția propriilor instrucțiuni. Această tehnică, prin care un thread
asteaptă execuția altor threaduri înainte de a continua propria execuție, se numește
sincronizarea threadurilor.
Un sistem de operare monotasking (MS-DOS) nu este capabil sa execute decât un singur
proces la un moment dat în timp ce un sistem de operare multitasking (UNIX, Windows)
poate rula oricâte procese în acelasi timp (concurent), alocând periodic cuante din timpul de
lucru al CPU fiecarui proces. Am reamintit acest lucru deoarece notiunea de fir de executie nu
are sens decât în cadrul unui sistem de operare multitasking. Un fir de executie este similar
unui proces secvential în sensul ca are un început, o secventa de executie si un sfârsit.
Diferenta între un fir de executie si un proces consta în faptul ca un fir de executie
Application Programming Interface(API) reprezintă un set de definitii de sub-programe, protocoale si unelte pentru programarea de aplicații si software.
4
Sisteme de operare curs 13
nu poate rula independent ci trebuie sa ruleze în cadrul unui proces. Firele de executie sunt
utile în multe privinte, însa uzual ele sunt folosite pentru executarea unor operatii
consumatoare de timp fara a bloca procesul principal : calcule matematice, asteptarea
eliberarii unei resurse, acestea realizându-se de obicei în fundal.(de exemplu ,in
word,paginarea documentului in timp ce tastam; in timpul in care se editeaza documentul,
un thread separat parcurge ciclic documentul si semnaleaza erorile de tastare.)
Când pornim calculatorul, primul program care rulează este de obicei un set de
instrucţiuni păstrate în memoria read-only (ROM) a calculatorului. Acest cod
analizează componentele sistemului pentru a asigura ca totul funcţionează corect.
Acest Power-On Self Test (POST) verifica CPU, memoria, si Basic Input-Output
System (BIOS) pentru erori și memorează rezultatul în locaţia de memorie specială. Dupa
ce POST este finalizat cu succes, software-ul încarcat în ROM (uneori numit BIOS sau
firmware) va începe sa activeze hard disk-ul calculatorului, in care gasește prima piesă a
sistemului de operare: bootstrap loader.
5
Sisteme de operare curs 13
Bootstrap loader este un mic program care are o funcţie unică: încarcă sistemul de
operare în memorie și îi permite să-și înceapă activitatea.
Întâi ,bootstrap loader pornește driverele cu care interferează și controlează diferitele
subsisteme hardware ale calculatorului. Stabilește zonele de memorie care reţin sistemul de
operare, informaţiile userului și a aplicaţiilor. Apoi da controlul asupra calculatorului
sistemului de operare.
Sarcinile sistemului de operare, în sensul cel mai general, se încadrează în
șase categorii:
-managementul procesorului
-managementul memoriei
-managementul dispozitivelor
-managementul spaţiului de pe disk
-interfaţa cu aplicaţiile
-interfaţa cu utilizatorul
6
Sisteme de operare curs 13
7
Sisteme de operare curs 13