You are on page 1of 37

Zastoj i njegovo

otklanjanje

Primeri traenje posla


(deadlock) i saobraajna
guva

Ne moete dobiti posao bez iskustva


Ne moete imati iskustvo bez posla
zaguenje u saobraaju

Primer nastanka potpunog


zastoja
na
mostu
Saobraaj preko mosta je mogu samo u
jednom smeru
Svaki deo mosta se moe posmatrati kao resurs
Ako se pojavi potpuni zastoj, on se moe
razreiti tako to se auto vrati nazad (oslobodi
resurs i vrati se u prethodno stanje)
Moe se desiti da nekoliko automobila mora da
se vrati nazad radi razreenja potpunog zastoja
Gladovanje (starvation) je mogue

Gladovanje ????

Stalno isti prelaze dok drugi ekaju


4

Tipovi resursa
Resursi sa ponovnim korienjem
(Reusable)
procesorsko vreme, glavna i sekundarna
memorija, semafori itd.

Potroni resursi (Consumable)


kreiraju se (proizvode) i unitavaju
(potroe) od strane procesa
prekidi, signali, poruke, informacije u U/I
baferima
5

Model raunarskog sistema


Tipovi resursa datog raunarskog sistema
R1, R2, , Rm-1
Procesorsko vreme (CPU ciklusi), memorijski
prostor, U/I ureaji

Svaki resurs tipa Ri imaWi instanci.


Svaki proces koristi resurs na sledei nain:
zahtev
korienje
oslobananje

Vieprogramski rad sistema


Procesi konkuriu jedan drugom
za resurse
Svaki od aktivnih procesa moe da
zahteva, koristi i oslobaa vie
resursa razliitog tipa i/ili vie
resursa istog tipa
7

Zahtev za resursom
Poziv operativnom sistemu koji vodi
evidenciju o
tipu,
broju i
zauzetosti resursa

i ukoliko je resurs slobodan dodeljuje


resurs procesu na korienje.

Mogui ishodi nakon


zahteva
procesa za resursom

Resurs se dodeljuje procesu i on se


nalazi u
stanju IZVRAVA - SE ili
u stanju SPREMAN

Ne postoje slobodni resursi zahtevanog


tipa i proces prelazi u stanje EKA
(prebacuje se u red ekanja na
zahtevani resurs).
9

Potrebni uslovi za nastanak


potpunog zastoja
1. Meusobno iskljuenje,
iskljuenje to znai
da
u sistemu postoje nedeljivi resursi,
odnosno resursi koji u svakom
vremenskom trenutku mogu biti
dodeljeni samo jednom procesu na
korienje
10

Potrebni uslovi za nastanak


potpunog zastoja
2. Posedovanje i ekanje (holdand-wait)
znai da postoje procesi koji
poseduju bar jedan nedeljivi resurs i
ekaju na druge nedeljive resurse
koje koriste drugi procesi

11

Potrebni uslovi za nastanak


potpunog zastoja
3. Resursi se ne mogu oduzimati
(no-preemption)
to znai da se resurs dodeljen
nekom procesu ne moe oduzeti dok
sam proces, eksplicitno, ne oslobodi
resurs.

12

Potrebni uslovi za nastanak


potpunog zastoja
4. Postoji kruno (ciklino)
ekanje tako da postoji skup procesa
p0, p1,...,pn pri emu proces p0 eka
na resurs koji dri proces p1,...,
proces pn eka na resurs koji dri
proces p0.

13

Graf dodele resursa


Elementi grafa G (c,l):
vorovi koje ine procesi P = {P1,...,
Pn}, simboliki prikazani krugovima i
resursi R = {R1,...,Rm} koji su na
grafu prikazani pomou kvadrata,pri
emu
broj taaka u kvadratu oznaava
broj komada posmatranog resursa i
lukovi, predstavljeni ureenim
parovima koji mogu biti zahtevi (pi, rj),
odnosno dodela resursa (rj, pi).
14

Graf dodele resursa komponente

15

Znaenje simbola - primeri

16

Potpuni zastoj

17

Potpuni zastoj primer


sistema

18

Primer grafa bez krunog


ekanja

19

1. primer grafa sa krunim


ekanjem

20

2. primer grafa sa krunim


ekanjem

21

3. primer grafa sa krunim


ekanjem

22

Primer grafa sa krunim ekanjem kod


koga ne mora da done do potpunog
zastoja

23

Primer memorijskog sistema


sa
potpunim zastojem

U KOM STANJU SU PROCESI

24

Vana pravila
Ako graf ne sadri kruno ekanje,
tada nema potpunog zastoja.
Ako graf sadri kruno ekanje tada
Ako je samo po jedna instanca po tipu
resursa tada sigurno dolazi do potpunog
zastoja
Ako ima vie instanci po tipu resursa
tada je mogu potpuni zastoj
25

Metode za upravljanje
potpunim zastojem
Obezbediti da sistem nikada ne ue u
stanje potpunog zastoja (spreiti ili izbei
nastanak potpunog zastoja)
Dozvoliti da sistem ue u stanje potpunog
zastoja, a zatim izvriti oporavak sistema
Ignorisati problem i pretpostaviti da
sistem nikada nee ui u stanje potpunog
zastoja; ovo se koristi kod veine
operativnih sistema ukljuujui UNIX
26

Spreavanje nastanka
potpunog zastoja
Spreavanje postojanja ispunjenosti potrebnih
uslova
Meusobno iskljuenje:
iskljuenje u optem sluaju nije
mogue jer su neki resursi po prirodi nedeljivi
Posedovanje i ekanje:
ekanje proces, u trenutku
kada trai neki resurs, ne sme posedovati nijedan
drugi resurs; proces mora da zahteva sve
resurse na poetku i svi mu se moraju
dodeliti pre poetka izvravanja
Slabo iskorienje resursa, mogue je
gladovanje
27

Spreavanje nastanka
potpunog zastoja - nastavak
Zabrana oduzimanja resursa: moe se
eliminisati, meutim to moe da dovede do
situacije da se proces kome je oduzet
resurs praktino nasilno prekida i njegovo
izvravanje mora da pone od poetka
Kruno ekanje: moe se eliminisati tako to
se resursi numeriu rednim brojevima i
uvede pravilo da proces moe da zahteva
resurse samo u rastuem redosledu
njihovih rednih Brojeva

28

Izbegavanje nastanka
potpunog zastoja
Operativni sistem, zahteva a priori informaciju od
svakog procesa u pogledu zahteva za resursima
Najjednostavniji model zahteva da svaki proces
deklarie maksimalni broj resursa svakog tipa koji
mu moe biti potreban (u toku ivotnog ciklusa
procesa).
Algoritam izbegavanja potpunog zastoja dinamiki
proverava stanja dodele resursa kako bi utvrdio da
ne moe da nastane uslov krunog ekanja.
Stanje dodele resursa je definisano brojem
raspoloivih i dodeljenih resursa i maksimalnim
zahtevima procesa.
29

Izbegavanje potpunog
zastoja

30

Vana pravila
Ako je sistem u bezbednom stanju
nema potpunog zastoja

Ako sistem nije u bezbednom stanju

mogu je potpuni zastoj

Izbegavanje potpunog zastoja


obezbediti da sistem ne pree u stanje
koje nije bezbedno.
31

Detektovanje potpunog
zastoja
Omoguiti da sistem ue u stanje
potpunog zastoja
Algoritam za detekciju potpunog
zastoja
Potrebna je ema za oporavak
sistema

32

Oporavak sistema iz stanja potpunog


zastoja zavretak procesa
Mogu se obrisati (zavriti) svi procesi koji su
u potpunom zastoju to je skupo
Mogu se brisati (zavriti) jedan po jedan
proces dok se ne izane iz stanja potpunog zastoja
(vremenski zahtevno)
Izbor se moe vriti po prioritetu, vremenu
izvravanja, potrebnom vremenu za zavretak
rada, potrebama za resursima do zavretka rada
itd.
U optem sluaju lake je oduzeti resurs, nego
zavriti proces u cilju oporavka sistema.
33

Oporavak sistema iz stanja potpunog


zastoja - oduzimanje resursa
Izbor rtve (koji proces prekinuti i koji
resurs oduzeti) minimiziranje cene.
Rollback vraanje u bezbedno
stanje i u tom stanju ponovno
startovanje procesa, kome je resurs
oduzet.
Gladovanje isti proces moe
uvek biti izabran kao rtva; ukljuiti
broj rollback-ova u faktor cene.
34

Kombinovani pristup
Kombinovanje tri osnovna pristupa
Spreavanje
Izbegavanje
Detektovanje potpunog zastoja
omoguava korienje optimalnog pristupa za svaku
klasu resursa u sistemu

Deljenje resursa u hijerarhijski ureene


klase
Koristiti najpodesniju tehniku za
upravljanje potpunim zastojem unutar
svake klase
35

Bankarov algoritam
U raunarskom sistemu postoji po vie
primeraka istog resursa
Banka nikad ne ulae sve resurse tako da
ne moe da zadovolji sve klijente
Procesi prilikom aktiviranja deklariu sve
resurse koji su im potrebni i maksimalan
broj broj resursa koji e ih zadovoljiti
Pri svaom zahtevu bankarov algoritam
analizira dali e ostati u bezbednom stanju.
36

Hvala na panji

37

You might also like