Sunteți pe pagina 1din 39

Cursul 1: Introducere

La prima vedere
In prezent: Mai multe CPUs/persoana
Automobil

10-100

Telefoanele:

min 1

PC:

4+

Complexitatea software:

Intrebari deschise:
Este nevoie ca fiecare program sa fie personalizat in
functie de hardware?
Un program defectuos va bloca de fiecare data tot
sistemul?
Orice program va avea acces la tot ceea ce inseamna
hardware?

Capitolul 1: Introducere
Ce fac sistemele de operare?
Organizarea si Arhitectura Sistemelor de calcul
Structura Sistemului de Operare. Opera:i si Func:i
Management-ul proceselor
Management-ul memoriei
Managementul stocarii
Protec:e si securitate

Obiective
Furnizarea informatiilor de baza despre
organizareasistemelor de calcul.
Furnizarea unei prezentari de ansamblu despre
componentele majore ale sistemelor de
operare

Ce fac sistemele
de operare?

Ce este un sistem de operare?


Un program care are rol de
intermediar intre utilizator si
componentele hardware.
Obiectivele sistemelor de operare:
Executarea programelor si rezolvarea
usoara a cerintelor utilizatorului
Face sistemul de calcul practic pentru
utilizare
Folosirea eficienta a componentelor
hardware

Similar unui Guvernator peste


componentele hardware

Structura unui sistem de calcul


Un Sistem de calcul se imparte in 4
componente:
Hardware ofera resursele de baza de calcul
CPU, memorie, periferice de intrare si iesire

Sistemul de operare
Controleaza si coordoneaza folosirea
componentelor hardware prin diverse aplicatii si
utilizatori

Programe de aplicatii definesc modul in


care resursele sistemului sunt folosite pentru
a solutiona nevoile utilizatorului
Programe pentru procesarea textelor,
compilatoare, browser web, baze de date, jocuri
video

Utilizatorii
Oameni, masini, alte pc-uri

Cele patru componente ale unui sistem


informatic

Interfata masinii
virtuale

Interfata masinii
fizice

Rolul sistemului de operare


Coordonator si politist de trafic:
Administreaza toate resursele
Rezolva cereri conflictuale pentru resurse
Previne erorile si utilizarea necorespunzatoarea a
computer-ului
Facilitator:
Ofera facilitati necesare pentru toti
Librarii standard, sisteme de ferestre
Permite facilitarea scrierii programelor, organizarea
datelor si corectarea erorilor
Unele caracteristici inglobeaza ambele sarcini:
E.x. Sistemul de fisiere este necesar tuturor (Facilitator)
Dar sistemul de fisiere trebuie protejat (Politist de trafic)

Rolul sistemului de operare


(Cont.)
SO este alocator de resurse
Gestioneaza toate resursele
Decide intre cereri conflictuale pentru folosirea
corecta si eficienta a resurselor

SO este un program de control


Controleaza executarea programelor pentru a
preveni erorile si utilizarea necorespunzatoare
a computer-ului

SO este un facilitator
Ofera componente ce imbunatatesc
performanta HW & SW

Definirea sistemului de operare


Nu exista o definitie universala
Tot ce primesti atunci cand cumperi un
sistem de operare ar fi o buna aproximare
Dar poate varia destul de mult.

Singurul program care ruleaza tot timpul


in computer este kernel-ul (nucleul).
Celelalte sunt fie programe de sistem (vin
la pachet cu sistemul de operare) sau
programe de aplicatii.

Organizarea i
operarea sistemului
de calcul

Organizarea sistemului de calcul


Unul sau mai multe CPU i controlere de
dispozitiv se conecteaz printr-o magistral
partajat furniznd acces la memoria comun

Operaiile sistemului de calcul


Perifericele de intrare i ieire
pot lucra concomitent cu CPU
Fiecare controler de dispozitiv
este responsabil pentru un
animit tip de dispozitiv
Fiecare controler de dispozitiv
are un buffer local
CPU mut datele dinspre/
ctre memoria principal
ctre/dinspre buffer-ele locale
Controlerele de dispozitive
informeaz CPU c i-au
terminat aciunea genernd o
ntrerupere .

Funcii comune ale ntreruperii


ntreruperea transfer control catre rutina serviciului de ntrerupere, n
general prin vectorul de ntrerupere ce conine adresa tuturor rutinelor de
serviciu.
Calculatorul trebuie s salveze adresa instruciunii 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 declanat de o
erroare sau la cererea utilizatorului.
Un sistem de operare este condus prin ntreruperi

Cronologia Intreruperii

Memorie cu acces direct (DMA)


Folosit pentru peripericele de intrare i ieire de vitez mare
capabile s transmit informaie aproape de viteza memoriei.
Controlerele de dispozitiv transfer blocuri de date stocate in
buffer direct catre memoria central fara ca CPU s intervin.
Este generat o singur ntrerupere per bloc, in loc de o
ntrerupere per byte.

Structura sistemului de stocare


Memoria principal pentru ebtitati de mari
dimensiuni pe care CPU le poate accesa direct
Zona de stocare secundar extensie a
memoriei principale care pune la dispoziie o
capacitate mare de stocare, non-volatil.
Disc magnetic platane rigide de metal sau
sticl acoperite cu material de nregistrare
magnetic
Suprafaa discului este logic mprit n piste , care
sunt mprite n sectoare .
Controlerul de disc determin interaciunea logic
ntre dispozitiv i computer .

Ierarhia stocarii
Atributele ierarhiei:
Viteza
Cost
Volatilitate
Capacitate-Bytes

Caching
Caching copierea informatiilor intr-un sistem de stocare
mai rapid; memoria principala poate fi vazuta ca un cache
pentru sistemul de stocarea secundar - HDD.
Regula importanta, efectuata pe mai multe niveluri intr-un
computer(hardware, sistem de operare, software)
Informatia, in timp ce este utilizata, este copiata temporar
dintr-un sistem de stocare mai lent in unul mai rapid.
Sistemul de stocare rapida(cache) este mai intai verificat
pentru a determina daca contine informatia.

Daca informatia exista, informatia este utilizata direct din cache


Daca informatia nu exista, informatia este copiata in cache si
utilizata

Cache este mai mic decat ce urmeaza sa fie stocat in


cache
Managementului cache-ului este o problema de design
Marimea cache-ului si politica de inlocuire

Performanta de stocare

Mutarea unui intreg A din Disk in Registru


Mediile multitasking trebuie sa foloseasca cea mai recenta
valoare, indiferent de ce este pastrat in ierarhia stocarii
Mediile multiprocesor trebuie sa furnizeze coerenta
cache in hardware astfel incat toate CPU-urile sa
beneficieze de cea mai recenta valoare in cache
In cazul mediului distribuit sutuatia devine si mai
complexa
Pot exista mai multe copii ale unor date

Structura, opera;ile
si func;ile sistemului
de operare

Operatiile Sistemului de
Operare
Multiprogramming necesar pentru eficienta
Un singur user nu poate tine ocupate tot
timpul CPU si dispozitivele I/E
Multiprogramming-ul organizeaza joburi(cod si date) astfel incat CPU sa aiba
intotdeauna un job de executat
O submultime a tuturor job-urilor din
sistem este localizata in memorie
Un job este selectat si pornit prin
intermediul job scheduling
Cand trebuie sa astepte (pentru
dispozitivele de I/E de exemplu),
sistemul de operare trece la o alta
sarcina/job

Operating System Operation


Multitasking-ul este o extensie logica in care CPU trece de la un
task la altul atat de frecvent incat userii pot interactiona cu fiecare
task in timp ce ruleaza, creand procesare interactiva.
Timpul de raspuns ar trebui sa fie < 1 secunda
Fiecare user are cel putin 1 program care se executa in
memorie [proces
Daca sunt mai multe sarcini gata sa porneasca in acelasi timp
[ CPU scheduling (planificare CPU)
Daca procesele nu incap in memorie, mecanismul de
swapping le muta astfel incat sa porneasca
Memoria virtuala permite executarea proceselor care nu sunt
in totalitate in memorie (prin extensie pe HDD).

Operatii ale SO
Operatiile sunt initiate prin intreruperi hardware
Pot fi determinate operatii prin apariatia unor eroari de
software sau prin cereri ale programelor care creaz o
exceptie sau un trap
Impartirea la 0, cerere pentru sprijinul sistemului de operare

Functia Dual-mode permite SO sa se protejeze pe


sine dar si celelalte componente ale sistemului.
Exista 2 moduri de operare: Modul User si modul
Kernel(nucleu)
Exista un bit de comutare implementat hardware

Ofera abilitatea de a distinge momentele in care sistemul ruleaza


codul user-ului sau al kernel-ului
Unele instructiuni sunt privilegiate si executabile doar in modul
kernel.
Apelul sistemului schimba in modul kernel, intoarcerea apelului
reseteaza in modul user.

Tranzitie de la modul User la


modul Kernel
Este necesat un Cronometru pentru a preveni un loop infinit
sau tinerea la infinit a unor resurse
Are loc generarea unei anumite intreruperi dupa o perioada
specifica
Sistemul de operare decrementeaza contorul
Cand contorul devine 0 genereaza o intrerupere
Stabilit inainte de programarea procesului pentru a putea
recastiga controlul sau a termina un program care trece peste
timpul alocat.

Func;ile Sistemelor de Operare


Ges:onarea Proceselor
Ges:onarea Memoriei
Ges:onarea dispozi:velor de stocare
Ges:onarea dispozi:velor de I/E
Ges:onarea Protec:ei si Securita:i

Gestionarea proceselor
Un proces este un program n execuie. Programul este o entitate
pasiv, procesul este o entitate activ.
Procesul are nevoie de resurse pentru a realiza sarcina
CPU, memory, I/O, fiiere
Date de iniializare
Procesele single-thread au un contor program care specific
locaia pentru urmatoarea instruciune de executat
Procesul execut instruciunile secvenial, una cte una, pn
la ncheiere
Procesele multi-thread au un contor program per thread
De obicei sistemul are multe procese, unele de ale unitilizatorilor,
altele din sistemul de operare care ruleaz simultan pe unul sau mai
multe CPU
Concurenta prin multiplexarea CPU ntre procese/thread-uri

Gestionarea proceselor

Gestionarea proceselor de catre


SO
Poate crea i terge procesele utilizatorului i
totodat pe cele ale sistemului
Suspend i repornete procese
Furnizeaz mecanisme pentru sincronizarea
proceselor
Furnizeaz mecanisme pentru comunicare
ntre procese
Furnizeaz mecanisme pentru gestionarea
blocajelor - deadlocks

Gestionarea memoriei
Toat informaia se regaseste in memorie
nainte i dup procesare
Toate instruciunile trebuie aduse in memorie
pentru a se putea executa
Activiti de gestionare ale memorie
Urmrete ce pri din memorie sunt folosite i de
ctre cine
Alege ce proces (sau parti de proces) i ce date s
fie mutate n sau din memorie
Aloc i elibereaz spatiu n memorie n funcie de
nevoie

Gestionarea mediului de stocare


SO ofer vizualizarea uniform i logic a informaiilor stocate
Defineste modelul abstract de stocare - fiier (file)
Fiecare mediu este controlat de dispozitiv (ex: disk drive, tape drive)

Gestionarea sistemelor de fiiere


Fiierele sunt organizate de obicei n directoare
Sunt definite mecanisme de control al accesului pentru a determina
cine acceseaz ce
Activitaile gestionrii sistemelor de fiiere ale SO includ:
Crearea i tergerea fiierelor i directoarelor
Manipularea fiierelor i directoarelor
Maparea fiierelor n mediul de stocare secundar
Copierea de siguran a fiierelor n medii de stocare stabile
(non-volatile)

Sisteme de intrare/ieire
Un scop al sistemului de operare este de a ascunde
particulariti ale dispozitivelor hardware de utilizator
Sisteme de intrare/ieireI sunt responsabile pentru:
Gestiunea memoriei sistemelor de intrare/ieire,
inclusiv:
buffering (stocarea informaiei temporar pe parcursul
transferului),
caching (stocarea unor pari din informaie n medii de
stocare mai rapide pentru a crete performana),
spooling (suprapunerea procesului de ieire cu alte
procese de intrare)

Drivere pentru dispozitive hardware specifice

Protecie i Securitate
Protecie orice mecanism de control al
accesului proceselor sau utilizatorilor la
resursele definite de sistemul de operare
Securitate aprare a sistemului mpotriva
atacurilor interne i externe
Gam uria, inclusiv denial-of-service, viermi,
virui, furt de identitate, furt de servicii

Recapitulare

Principiile Sistemului de operare


SO ca si iluzionist:

Face limitrile hardware s dispar


Furnizeaz iluzia unei maini dedicate cu memorie i
capacitate de procesare infinite

SO ca si guvern:

Protejeaz utilizatori unul de cellalt


Asigura alocarea eficient i corect a resurselor

SO ca si sistem complex:

Exista o tensiune permanenta ntre simplitate i


funcionalitate/performan

SO ca si profesor de istorie:

nva din trecut


Adaptarea sistemelor de operare la noile facilitati
hardware

Sfritul cursului 1