Documente Academic
Documente Profesional
Documente Cultură
1: Introducere
Sisteme de Operare
Context
• In prezent: Rata No. CPU/persoana > 1
• Automobil
• 10-100
• Telefoanele:
• min 1
• PC:
• 4+
Interfata masinii
Virtuale - IMV
Interfata masinii
Fizice -IMF
Rolul sistemului de operare
• Politist/ Coordonator:
• Administreaza resursele
• Rezolva cereri conflictuale pentru resurse
• Previne erorile si utilizarea necorespunzatoarea a
calculatorului
• Facilitator:
• Ofera librarii standard, sisteme de ferestre
• Faciliteaza scrierea programelor mai usor, mai rapid si
cu mai putina expunere la erori
• Unele caracteristici inglobeaza ambele sarcini:
• Ex: Sistemul de fisiere este necesar tuturor
(“Facilitator”)
• Dar sistemul de fisiere trebuie protejat (“Politist”)
Rolul sistemului de operare
(Cont.)
• SO aloca resurse
• Gestioneaza toate resursele
• Decide intre cereri conflictuale asigurand
folosirea corecta si eficienta a resurselor
• SO este un program de control
• Controleaza executia programelor pentru a
preveni erorile si utilizarea necorespunzatoare
a computerului
• SO este un facilitator
• Ofera componente ce imbunatatesc
performanta HW & SW
Definirea unui SO
• Nu exista o definitie universala
• “Tot ce primesti atunci cand cumperi un
sistem de operare” ar fi o aproximare J
• “Acele programe care ruleaza tot timpul in
computer” reprezinta kernel-ul (nucleul).
Celelalte sunt fie programe de sistem (vin
la pachet cu sistemul de operare) sau
programe de aplicatii.
Scurta istorie a SO
De la maiframe la sisteme web-based
1. Calculatoare single-user
• HW- scump; resursa umana ieftina
• Un utilizator la consola la un moment dat
• Interactiune pe masura executiei programului
• Computerul executa o functie la un
moment dat
• Nu exista suprapunere intre calcule si I/O
• Utilizatorul trebuie sa fie la consola pentru
debug
2. Procesare batch
• Executa mai multe joburi intr-un lot
• Incarca programul
• Ruleaza programul
• Printeaza rezultatele; reseteaza starea masinii
• Repeat
• Utilizatorii submit joburi (cartele perforate;
benzi magnetice)
• Operatorul sistemului planifica joburile
• Sistemul de operare incarca si ruleaza
joburile
• Rezultat: utilizare mai eficienta a masinii
3. Suprapunere I/O si Calcule
• Anterior: masina asteapta sa se finalizeze
operatia de I/O
• Abordare noua:
• Permite CPU sa ruleze cat timp se asteapta I/O
• Se adauga buffering si tratarea intreruperilor
• SO gestioneaza interactiunile
• Planifica ce job se ruleaza
• Protejeaza memoria fiecarui job
5. Anii 70 - Renasterea
• HW mai ieftin; oamenii devin mai scumpi
• Utilizatori multipli folosesc acelasi sistem
prin terminale diferite
• Era UNIX
5. Anii 80 – Revolutia industriala
• HW ieftin; oamenii scumpi
• Apar PCs – IBM PC 1981; Macintosh 1984
• Sisteme de operare simple – DOS, MacOS
• GUI in OS
• Fara: multiprogramare; concurenta; protectie
memorie; memorie virtuala
• Ulterior: Networking; file-sharing; printing
6. Epoca moderna: 90 ->
• HW ieftin; cerere mare pentru putere de
calcul
• Sisteme de operare solide – NT, MacOS X,
Linux
• Diverse arhitecturi
• Real time
• Procesare paralela – mai multe procesoare intr-
o masina
• Procesare distribuita – mai multe CPU intr-o
retea – P2P, Web; Google
• SO pentru telefoane; tablete; ceasuri; TV
Evolutia SC
• In 50 de ani, ~ fiecare componenta este
10^9x mai rapida; mare; ieftina
• Moore’s law – putere de calcul 2x la 2 ani
Provocari curente
• Noi facilitati
• Multiple core
• memorie SSD cu probleme de fiabilitate
• Contrangeri legate de alimentare/caldura
• Posibile tradeoffs
• Putere de calcul vs fiabilitate
Organizarea şi
operarea unui
sistem de calcul
Organizarea unui sistem de
calcul
• Unul sau mai multe CPU (cores), controlerele de
dispozitiv se conectează printr-o magistrală
partajata furnizând acces la memoria comună
Niveluri intr-un sistem de
calcul
• Perifericele de intrare şi ieşire
si CPU pot opera concomitent
• Fiecare controler este
responsabil pentru un anumit
tip de dispozitiv
• Fiecare controler de dispozitiv
are un buffer local
• CPU mută datele
dinspre/către memoria
principală către/dinspre
bufferele locale
• Controlerele de dispozitiv
informează CPU că şi-au
terminat acţiunea generând o
întrerupere .
Servicii OS vs HW
Intreruperi
Funcţii ale întreruperilor
• Întreruperea transferă control catre rutina serviciului de întrerupere prin
vectorul de întrerupere ce conţine adresa tuturor rutinelor de serviciu.
• Calculatorul trebuie să salveze adresa instrucţiunii întrerupte.
• Întreruperile sunt dezactivate în timp ce o altă întrerupere este procesată,
pentru a evita pierderea unei întreruperii.
• “trap” (capcana) este o întrerupere generată de software declanşată de o
erroare sau la cererea utilizatorului.
• Un sistem de operare este condus prin întreruperi
Stocarea datelor
Structura sistemului de stocare
• Memoria principală –pentru entitati de mari
dimensiuni pe care CPU le poate accesa direct