24
Praktikum iz operativnih sistema Lekcija 6: Raspoređivanje periodičnih poslova (II) Prof. dr Branimir Trenkić

Lecture 6

  • Upload
    zlatil

  • View
    11

  • Download
    1

Embed Size (px)

DESCRIPTION

EDD diagram

Citation preview

Page 1: Lecture 6

Praktikum iz operativnih sistema

Lekcija 6: Raspoređivanje periodičnih poslova (II)

Prof. dr Branimir Trenkić

Page 2: Lecture 6

Proširenje na poslove sa D < T

• Dosadašnja analiza pasporedljivosti skupa periodičnih poslova – hipoteze A1, A2, A3 i A4

• Hipoteza A3 - Sve instance periodičnog posla imaju isti relativni deadline Di, koji je jednak periodi Ti .

• Dozvoljava izvršavanje instance bilo gde unutar periode – vrlo često nije želja u RT aplikacijama

• Relaksiranje uslova A3 će omogućiti fleksibilniji model procesa

Page 3: Lecture 6

Proširenje na poslove sa D < T

• Algoritmi raspoređivanja:• DM (Deadline Monotonic): pi ↔ 1/Di (statički)• EDF (Earliest Deadline First): pi ↔ 1/di

(dinamički)

Page 4: Lecture 6

DM (Deadline Monotonic)• Proširenje RM- algoritma u slučajevima kada

poslovi mogu imati relativne deadline-ove manje od njihovih perioda

• DM način dodele prioriteta relaksira uslov Di = Tiunutar šeme raspoređivanja sa statičkim prioritetima

• Svaki periodični posao je dat sa:– fazom– vremenom izvršavanja u najgorem slučaju Ci

– relativnim deadline-om, Di

– periodom Ti

Page 5: Lecture 6

DM - Analiza rasporedljivosti• Verifikacija izvodljivosti skupa poslova sa

deadline-ovima koji nisu jednaki periodama, možebiti izvršena RM testom rasporedljivosti skupa

• Modifikacija testa – redukovanje perioda posla sa relativnim deadline-ovima:

• Ovaj test nije optimalan – precenjuje se opterećenje procesora !

1

12 1

ni n

pi i

CU nD=

= ≤ −

Page 6: Lecture 6

DM - Analiza rasporedljivosti

• Problem sa ograničenjem faktora iskorišćenosti procesora:

ali, skup poslova je još uvek rasporedljiv!

Page 7: Lecture 6

DM - Analiza rasporedljivosti• Manje pesimistički test rasporedljivosti se može

dobiti na sledeći način:• Ukupno zahtevano procesorsko vreme u

najgorem slučaju, desiće se kada se svi poslovi aktiviraju simultano (kritična tačka)

Test:Za svaki posao , zbir

(i) njegovog vremena izvršavanja i (ii) interferencije (prekidanja) nametnute poslovima

većeg prioriteta, mora biti manji ili jednak od Di

Page 8: Lecture 6

DM - Analiza rasporedljivosti• Predpostavimo da su poslovi uređeni po

rastućim relativnim deadline-ovima:i < j ↔ Di < Dj

test je dat sa:

gde je Ii mera interferencije na posao :

:1 i i ii i n C I D∀ ≤ ≤ + ≤

1

1

ii

i jj j

DI CT

=

=

Page 9: Lecture 6

DM - Analiza rasporedljivosti• Ovaj test je dovoljan mada nije potreban za

garanciju rasporedljivosti skupa poslova• Razlog:Ii se računa sa predpostavkom da posao višegprioriteta utiče tačno puta na posao • Što ne mora biti tačno:

i jD T

Page 10: Lecture 6

Potreban i dovoljan uslov testa• Analiza bazirana na vremenu odziva (response

time analysis)• Za svaki posao , izračunava se interferencija

izazvana poslovima višeg prioriteta:

• Izračuna se zatim vreme odziva kaoRi = Ci + Ii

• Zatim verifikacija ako je Ri ≤ Di

Page 11: Lecture 6

Proračun interferencije

• Interferencija posla na izvršenje posla u intervalu [0, Ri]: i

ik kk

RI CT

=

• Interferencija posla sa višim prioritetom na posao : 1

1

ii

i kk k

RI CT

=

=

Page 12: Lecture 6

Proračun vremena odziva

• Iterativno rešenje proračuna:

sve dok je Ri(s) > Ri

(s-1)

(0)

1

( 1)1( )

1

i

i kk

sis i

i i kk k

R C

RR C CT

=

−−

=

=

= +

Page 13: Lecture 6

Dinamičko dodeljivanje prioriteta

• EDF:• Raspoređivanje bazirano na. apsolutnim

deadline-ovima• Analiza rasporedljivosti:• Bazira se na kriterijumu zahtevanog

procesorskog vremena:• U bilo kom intervalu, zbir zahteva za

procesorskim vremenom svih poslova iz skupa, ne sme biti veći od respoloživog vremena

Page 14: Lecture 6

Proračun potrebnog procesorskog vremena

• Potrebno da se obrade sve instance posla zakoje važi:– release time (aktiviranje)– posle ili jednak t1

– deadline – pre ili jednek t2

Page 15: Lecture 6

Proračun potrebnog procesorskog vremena

• Potrebno procesorsko vreme na intervalu [0,L]:

Page 16: Lecture 6

Testiranje zahteva

• Pitanje:Kako ograničiti broj intervala u kojima ćemo izvršiti testiranje?

Page 17: Lecture 6

Primer

Page 18: Lecture 6

Ograničenje složenosti proračuna

• Kako je g(0,L) step- funkcijaprovera izvodljivosti se može vršiti samo u tačkama deadline-a (gde ova funkcija menja vrednost)• Ako su poslovi sinhroni i Up < 1provera izvodljivosti se vrši najviše u hiper-periodu H (najmanji zajednički sadržalac):

H = NZS(T1, …., Tn)

Page 19: Lecture 6

Ograničenje složenosti proračuna

• Pored toga, važi: g(0,L) ≤ G(0,L)

Page 20: Lecture 6

Ograničenje složenosti proračuna

Page 21: Lecture 6

Ograničenje složenosti proračuna

Page 22: Lecture 6

Zaključak

• Tri pristipa raspoređivanja:• Off-line konstrukcija (Ciklično raspoređivanje)• Statička dodela prioriteta (RM, DM)• Dinamička dodela prioriteta (EDF)• Tri analitičke tehnike:• Ograničavanje iskorišćenosti procesora U ≤ Ulub

• Analiza vremena odziva ∀i Ri ≤ Di

• Kriterijum zahteva za procesorskim vremenom∀L g(0,L) ≤ L

Page 23: Lecture 6

Prebacivanje konteksta

Page 24: Lecture 6

RM vs. EDF : Zaključak

• EDF:• Mnogo efikasniji• Redukuje prebacivanje konteksta• RM:• Jednostavan za primenu u komercijalnim

sistemima realnog vremena