Вы находитесь на странице: 1из 35

Facultatea: Automatic i Calculatoare

Domeniul: Calculatoare i Tehnologia Informaiei

An universitar: 2014 2015

Sisteme de Operare
.l.dr.ing. Cristian Amarandei
camarand@cs.tuiasi.ro

Curs #01 - Coninut


Prezentarea disciplinei
Noiuni introductive

[SO - 2014-2015]

Curs 1 - Notiuni introductive

2/35

Prezentarea disciplinei
Organizare

Curs

2 ore/sptmn [Total: 28 ore curs]

Laborator

2 ore/sptmn [Total: 28 ore laborator]

[SO - 2014-2015]

Curs 1 - Notiuni introductive

3/35

Prezentarea disciplinei
Organizare [2]

Evaluare

Evaluarea final

ponderea n nota final: 50%


Prob scris (not 5)
Test gril
1 sau 2 probleme
fr acces la surse bibliografice

Evaluarea pe parcurs

Activitatea la laborator (not 5)


ponderea n nota final: 20%
Criterii de evaluare: rezolvarea temelor propuse i calitatea soluiilor.

Teste laborator (sptmna 6 i 14) (not 5)


ponderea n nota final: 30%
Prob practic
Acces la lucrrile de laborator

[SO - 2014-2015]

Curs 1 - Notiuni introductive

4/35

Prezentarea disciplinei

Obiectivele cursului

Introducerea conceptelelor de
baz ale sistemelor de operare:
procese, thread-uri, sincronizare,
concuren, fiiere, memorie;
Analiza sistemelor de operare
moderne (Linux, Solaris,
Windows)
Prezentarea unor
algoritmi/tehnici de proiectare a
aplicailor complexe
nelegerea modului n care
alegerea diferitelor strategii de
proiectare i implementare a unui
sistem de operare au implicaii
asupra utilizrii resurselor
calculatorului i asupra
programelor utilizator

[SO - 2014-2015]

Rezultatele nvrii

nelegerea mecanismelor
fundamentale care stau la
baza funcionrii unui sistem
de calcul (hardware >
sistem de operare >
aplicaii)
Cunotine despre
algoritmi/tehnici de
proiectare a aplicaillor
complexe
Dezvoltarea unor aplicaii
care utilizeaz apeluri sistem
Utilizarea/administrarea mai
eficienta a sistemelor de
calcul

Curs 1 - Notiuni introductive

5/35

De ce studiem Sistemele de
Operare?

Pentru a nva cum funcioneaz sistemele de calcul

Administrarea/utilizarea eficient a unui sistem de calcul

Este necesar modificarea parametrilor SO nu se poate face fr a nelege funcionarea acestuia.


nelegerea serviciilor oferite de SO influeneaz modul de proiectare a aplicaiilor complexe
Erori de functionare ale SO -> sistem de calcul inutilizabil.
Trebuie s aib mai puine erori de funcionare dect aplicaiile

Depanarea aplicaiilor
System/low-level/kernel programming
Anumite aspecte/tehnici pot fi aplicate n alte domenii

CPU, memorie, sisteme de fiiere, etc.

Asigurarea performanei sistemului/aplicaiilor

Arhitectura hardware/software

concuren, gestiunea resurselor, tratarea erorilor, gestiunea de structuri complexe (nivelul de


abstractizare furnizat de SO)

Securitatea SO -> baza securitii sistemului de calcul


Deoarece sunt peste tot ! (PC, servere, smartphones)

[SO - 2014-2015]

Curs 1 - Notiuni introductive

6/35

Cuprins
Noiuni introductive
Structura unui sistem de operare
Gestiunea proceselor
Gestiunea memoriei
Gestiunea sistemului de fiiere
Sistemul de I/O

[SO - 2014-2015]

Curs 1 - Notiuni introductive

7/35

Bibliografie
Silberschatz A.,
Galvin P. Operating System
Concepts, 9th
Edition , John Wiley
& Sons, 2012
http://www.osbook.com/

[SO - 2014-2015]

Curs 1 - Notiuni introductive

8/35

Bibliografie

Andrew S. Tanenbaum Operating Systems: Design


and Implementation, 3rd
Edition, Prentice Hall, 2009

https://github.com/citrusle
e/Studijne-materialyFIIT/blob/master/3.%20Se
mester/OS/Materialy/Oper
ating%20Systems
%20Design
%20%26%20Implementat
ion%203rd%20Edition.pdf

http://www.minix3.org/do
cumentation/index.html

[SO - 2014-2015]

Curs 1 - Notiuni introductive

9/35

Bibliografie

William Stallings Operating Systems:


Internals and
Design Principles,
6th Edition, Prentice
Hall, 2008
http://williamstallings
.com/OS/OS6e.html

[SO - 2014-2015]

Curs 1 - Notiuni introductive

10/35

Bibliografie
David Solomon, Mark
Russinovich - Microsoft
Windows Internals, 4th/5th/6th
Ed., 2004/2009/2012
Boian F.M. - Sisteme de
operare interactive, Ed.
Libris, 1994
T. Ionescu, D. Saru, J. Floroiu Sisteme de operare.
Principii i funcionare, Ed.
Tehnic, 1997
Ignat I. - Unix - Gestionarea
Proceselor, Ed. Albastr, 2006

[SO - 2014-2015]

Curs 1 - Notiuni introductive

11/35

Definiia unui sistem de operare

Un sistem de operare reprezint un set de


programe care asigur gestionarea
resurselor unui sistem de calcul
implementnd algoritmi destinai s
maximizeze performanele i realizeaz o
interfa ntre utilizator i sistemul de
calcul, extinznd dar i simplificnd setul
de operaii disponibile.

[SO - 2014-2015]

Curs 1 - Notiuni introductive

12/35

Structura unui sistem de calcul

Utilizator

Programator

Programe de
aplicaii
Utilitare

Hardware :

Sistem de operare:

Proiectant de
sisteme de
operare

[SO - 2014-2015]

folosite pentru administrare i


operarea sistemului de calcul

Aplicaii:

Controleaz i coordoneaz
utilizarea resurselor hardware

Programe utilitare

Sistem de operare

Computer Hardware

CPU, memorie, dispozitive I/O

procesoare de text,
compilatoare, web browser,
baze de date, jocuri

Utilizatori

Curs 1 - Notiuni introductive

13/35

Funciile unui sistem de operare

Interfaa cu utilizatorul
Gestiunea fiierelor
Gestiunea perifericelor
Gestiunea memoriei
Gestiunea proceselor
Tratarea erorilor
Gestiunea sistemului

Sistem de calcul

Sistemul de operare ca manager de


resurse

[SO - 2014-2015]

Curs 1 - Notiuni introductive

14/35

Structura unui sistem de operare

[SO - 2014-2015]

Curs 1 - Notiuni introductive

15/35

Interfaa cu utilizatorul

Comenzile

determin ntr-o mare msur acceptarea de ctre


utilizatori a unui sistem de operare
introduse de utilizatori
sunt prelucrate de interpretorul de comenzi

Apelurile de sistem

definesc arhitectura unui sistem de operare


asemntoare apelurilor de proceduri
sunt folosite de programatorii de sistem i
programatorii de aplicaii

[SO - 2014-2015]

Curs 1 - Notiuni introductive

16/35

Gestiunea fiierelor
Fiierele reprezint forma n care sunt
pstrate infomaiile
gestiunea fiierelor - modul n cadrul
sistemului de operare:

operaiile de creare i tergere a fiierelor


controlul accesului la fiiere
citirea i scrierea de informaii din i n fiiere
securitatea informaiilor
organizarea coleciei de fiiere

[SO - 2014-2015]

Curs 1 - Notiuni introductive

17/35

Gestiunea perifericelor
pregtirea operaiei
lansarea cererilor de transfer de informaie
controlul transferului propriu-zis
tratarea erorilor

[SO - 2014-2015]

Curs 1 - Notiuni introductive

18/35

Gestiunea memoriei
o poriune este rezervat pentru sistemul de
operare
restul memoriei este disponibil pentru
programele utilizator
Trebuie s rezolve probleme legate de:

protecia memoriei folosite de programe


mprirea memoriei disponibile ntre programele
solicitante
planificarea schimburilor cu memoria

[SO - 2014-2015]

Curs 1 - Notiuni introductive

19/35

Gestiunea proceselor

Trebuie s rezolve probleme legate de:

Strile unui proces


Contextul unui proces
Sincronizarea proceselor
Tratarea blocajelor
Planificarea proceselor

[SO - 2014-2015]

Curs 1 - Notiuni introductive

20/35

Tratarea erorilor
sistemul de operare trebuie s reacioneze
la o diversitate de erori ce pot aprea att
din cauze hardware ct i software
erorile trebuie s fie transparente
utilizatorului
SO trebuie s aib mai puine erori de
funcionare dect aplicaiile

[SO - 2014-2015]

Curs 1 - Notiuni introductive

21/35

Evoluia sistemelor de operare

a) Sistemele de tip Batch (SB) sau cu prelucrare pe


loturi deservete job-uri dintr-o coada de job-uri.

Dezavantaje:

lipsa interaciunii cu utilizatorul n timpul rulrii programului


timpul de rulare foarte mare

Cititor
cartele

cartele

Memorie
extern

Recepie

Calculator

rezultate

Imprimant

Memorie
extern

Structura unui sistem cu prelucrare pe loturi


[SO - 2014-2015]

Curs 1 - Notiuni introductive

22/35

Evoluia sistemelor de operare (2)

sistemele de tip Batch

cu monoprogramare

monoprogramare

cu multiprogramare

multiprogramare

[SO - 2014-2015]

Curs 1 - Notiuni introductive

23/35

Evoluia sistemelor de operare (3)

Sistemele cu multiprogramare au introdus


tehnica job spoooling

SPOOL = Simultaneous Peripheral Operations


On-Line.

[SO - 2014-2015]

disponibilitatea unei memorii externe de capacitate


mare i cu acces direct
asigurarea unei ncrcri la ntreaga capacitate a
dispozitivelor periferice de intrare/ieire

Curs 1 - Notiuni introductive

24/35

Evoluia sistemelor de operare (4)


job

spooler
spool

planificatori
termen
lung
list de job-uri

termen
mediu
lista job-uri
pregtite

termen
scurt
CPU

[SO - 2014-2015]

Curs 1 - Notiuni introductive

25/35

Evoluia sistemelor de operare (5)

b) Sisteme cu divizarea (partajarea) timpului (time


sharing) SPT

posibilitatea ca mai muli utilizatori s partajeze o main prin


ntreeserea job-urilor
nu permiteau interaciune n timp real ntre utilizator i sistemul de
calcul
asigur cte un terminal pentru fiecare utilizator al sistemului i
din acest motiv se mai numesc sisteme multitasking i multiuser
se introduce un mecanism de protecie i securitatea accesului la
resurse.
Exemple:

CTSS (Compatible Time-Sharing System) dezvoltat la MIT pe un sistem IBM


7094
TSS/360 dezvoltat de IBM pentru IBM System 630/67
MULTICS , dezvoltat de MIT, AT&T Bell Laboratories i General Electric pe un
calculator GE 635 modificat

[SO - 2014-2015]

Curs 1 - Notiuni introductive

26/35

Evoluia sistemelor de operare (6)

c) Sisteme cu memorie virtual

Prin tehnica de memorie virtual un disc se poate


folosi ca suport automat (fr intervenia
programatorului) pentru extinderea memoriei
interne, permind programelor s aib la dispoziie
un spaiu de memorie virtual mai mare dect cel al
memoriei interne.
Exemple:

[SO - 2014-2015]

OS/MVS (Multiple Virtual Spaces) ;


VM/370 ( Virtual Machine for the 370) - realiza
virtualizarea unui ntreg sistem nu numai a memoriei.

Curs 1 - Notiuni introductive

27/35

Sisteme cu memorie virtual


Real
addresses
Processor
Virtual
addresses

Memory
Management
Unit

Main Memory

Disk
addresses

Secondary
memory

Adresarea memoriei virtuale


[SO - 2014-2015]

Curs 1 - Notiuni introductive

28/35

Evoluia sistemelor de operare (7)

d) Sisteme de operare pentru minicalculatoare

PDP 11(anii 70-80):

RT-11 - gndit s deserveasc un singur utilizator, dar prevzut cu


o form limitat de multiprogramare (foreground / background)
RSX-11 - un limbaj de comand puternic, un sistem de fiiere
dezvoltat, gestionarea memoriei interne prin partiii de dimensiune
variabil i multiprogramare.

PDP-7 - Unix :

- dezvoltat la Bell Laboratories de Thompson i Ritchie,


reimplementat i extins pe PDP-11
- Inspirat din MULTICS, permite accesul simultan al mai multor
utilizatori, fiecare putnd lansa procese concurente

[SO - 2014-2015]

Curs 1 - Notiuni introductive

29/35

Evoluia sistemelor de operare (8)

e) Sisteme de operare pentru calculatoare personale

1971 - microprocesor Intel4004, apoi apar 8008, 8080, urmate de Z80


i Motorola M6800.
CP/M:

primul sistem de operare pe 8 bii


produs de Digital Research
sistem monoutilizator cu interfa de comand simpl, sistem de fiiere mononivel,
interfa I/E bine dezvoltat

microprocesoarele pe 16 bii (Intel 8086, Motorola 68000)

MS-DOS, Windows 3.1, 3.11


monoutilizator, monoproces, sistem ierarhic de fiiere, interfa cu utilizatorul bine
dezvoltat.

f) Sisteme de operare pentru sisteme de calcul distribuite

au aprut odat cu dezvoltarea reelelor de calculatoare

se urmrete integrarea ct mai puternic a resurselor din reea astfel nct


localizarea resurselor s fie transparent pentru utilizatori i aplicaii (CHORUS,
MACH, AMOEBA).

[SO - 2014-2015]

Curs 1 - Notiuni introductive

30/35

Clasificarea sistemelor de operare

Sistemul de operare poate fi privit ca o


main abstract ce are mai multe
niveluri:

A0 nivelul hardware
A1 nivelul microprogram (funcii BIOS)
A2 nivelul funciilor realizate n limbaj de
asamblare ce gestioneaz regitrii, controllerele, ntreruperile, memoria.
An-1 API interfaa de apeluri sistem a S.O.

[SO - 2014-2015]

Curs 1 - Notiuni introductive

31/35

Clasificarea sistemelor de operare (2)

Dup calculatoarele pe care ruleaz:

staii de lucru, n general mono-utilizator.


Ex: MS-DOS, WINDOWS, sistem UNIX cu faciliti grafice

pentru o reea de calculatoare poate fi gestionat de


un S.O. de tip:

file-sever (Netware, Unix):

S.O. este pe un singur calculator,staiile avnd ncrcate n memorie


o versiune de DOS la faza de login singura resurs comun
harddisk-ul de pe server

peer to peer :

Windows 3.11 (nodurile sunt echivalente) acelai S.O. este ncrcat


de fiecare calculator ;

[SO - 2014-2015]

Curs 1 - Notiuni introductive

32/35

Clasificarea sistemelor de operare (3)

Dup accesul la memorie:

UMA (Uniform Memory Access): adic timpii de acces la memorie


sunt egali pentru toate procesele din sistem (memorie global)
NUMA (Non Uniform Memory Access): timpi de acces diferii
NORMA (No Remote Memory Access): sistemul este cuplat ntr-o
reea fr memorie global.

Din punctul de vedere al transmisiei de mesaje:

Sisteme de operare cu transmitere de mesaje permite


realizarea unui S.O. distribuit (comunicare ntre procese att de pe
aceeai main ct i de pe maini diferite).
Sisteme de operare fr transmitere de mesaje apelul
procedurilor pe care le executa procesele utilizator se transmit prin
apeluri de proceduri locale.

[SO - 2014-2015]

Curs 1 - Notiuni introductive

33/35

Clasificarea sistemelor de operare (4)

Sistemele de operare de timp real

Trebuie s opereze n cadrul unor constrngeri de timp

Clasificare:

Dup comportarea n timp real al task-urilor:

Dup importana deadline-ului

task-uri sporadice: task-ul este asincron i nepredictibil (ex: intreruperile)


task-uri aperiodice: are un anumit ciclu dar cu perioade de timp variabile (nu
respect o distribuie)
task-uri periodice: au o ciclicitate regulat (remprosptarea imaginii)
hard - real time: aciunea unui task ce depete deadline-ul este 0 sau negativ
soft - real time: dac aciunea unui task depete deadline-ul are o valoare
indiferent

Exemple: QNX, CHORUS

[SO - 2014-2015]

Curs 1 - Notiuni introductive

34/35

Clasificarea sistemelor de operare (5)

Sistemele de operare de timp real


deadline (momentul la care task-ul trebuie sigur s-i fi
terminat execuia)

t
C - interval de calcul
(de execuie a unui task)

release
time

[SO - 2014-2015]

start time

Curs 1 - Notiuni introductive

35/35

Вам также может понравиться