22
1 [email protected]; v2.0 1 Operacijski sustavi Prekidi Tehničko Veleučilište u Zagrebu prekidi i CPU vrijeme 2 [email protected]; v2.0 Prekidi Prekidi su asinkroni događaji koje izaziva različito sklopovlje da bi obavijestili OS o specifičnom događaju koji mora biti obrađen Primjeri prekida: pritisak tipke na tipkovnici pomicanje miša istek vremenskog intervala završetak čitanja/pisanja Svaki uređaj na sabirnici ima IRQ liniju (interrupt request) preko kojega traži prekid prekidi i CPU vrijeme

1.Auditorne Prekidi Cpu 2013 2014 Cb

Embed Size (px)

DESCRIPTION

Operaciski sustavi

Citation preview

Page 1: 1.Auditorne Prekidi Cpu 2013 2014 Cb

1

[email protected]; v2.0 1

Operacijski sustavi

Prekidi

Tehničko Veleučilište u Zagrebu

prekidi i CPU vrijeme

[email protected]; v2.0

Prekidi� Prekidi su asinkroni događaji koje izaziva različito

sklopovlje da bi obavijestili OS o specifičnom događaju koji mora biti obrađen

� Primjeri prekida:

� pritisak tipke na tipkovnici

� pomicanje miša

� istek vremenskog intervala

� završetak čitanja/pisanja

� Svaki uređaj na sabirnici ima IRQ liniju (interrupt request) preko kojega traži prekid

prekidi i CPU vrijeme

Page 2: 1.Auditorne Prekidi Cpu 2013 2014 Cb

2

Obavljanje prekida

3

� Pretpostavimo da računalni sustav ima tri pristupna sklopa i da su oni razvrstani u tri prioriteta. Viši prioritet prekida, prekidatrenutni prekid. P3 ima najviši prioritet. Svaka obrada prekida traje tri vremenska intervala t. Prekidi se pojavljuju za redom sa prioritetima p3,p2,p1 koracima od 1t.

prekidi i CPU vrijeme [email protected]; v2.0

Obavljanje prekida

4

� Pretpostavimo da računalni sustav ima tri pristupna sklopa i da su oni razvrstani u tri prioriteta. Viši prioritet prekida, prekidatrenutni prekid. P3 ima najviši prioritet. Svaka obrada prekida traje tri vremenska intervala t. Prekidi se pojavljuju za redom sa prioritetima p3,p1,p2 koracima od 1t.

prekidi i CPU vrijeme [email protected]; v2.0

Page 3: 1.Auditorne Prekidi Cpu 2013 2014 Cb

3

Obavljanje prekida

5

� Pretpostavimo da računalni sustav ima tri pristupna sklopa i da su oni razvrstani u tri prioriteta. Viši prioritet prekida, prekidatrenutni prekid. P3 ima najviši prioritet. Svaka obrada prekida traje tri vremenska intervala t. Prekidi se pojavljuju za redom sa prioritetima p1,p3,p2 koracima od 1t.

prekidi i CPU vrijeme [email protected]; v2.0

Obavljanje prekida

6

� Pretpostavimo da računalni sustav ima tri pristupna sklopa i da su oni razvrstani u tri prioriteta. Viši prioritet prekida, prekidatrenutni prekid. P3 ima najviši prioritet. Svaka obrada prekida traje tri vremenska intervala t. Prekidi se pojavljuju za redom sa prioritetima p1,p2,p3 koracima od 1t.

prekidi i CPU vrijeme [email protected]; v2.0

Page 4: 1.Auditorne Prekidi Cpu 2013 2014 Cb

4

Obavljanje prekida

7

� Računalni sustav ima 4 pristupna sklopa sa 4 prioriteta : P1-najveći, P4 najmanji. Veći prioritet prekida trenutni prekid. Svaki prekid traje 3t. Prekidi se pojavljuju redom P3, P4, P1, P2, P4 svakih 1t. Nacrtajte obradu:

prekidi i CPU vrijeme [email protected]; v2.0

Obavljanje prekida

8

� Pretpostavimo da računalni sustav ima pet pristupnih sklopova i da su oni razvrstani u pet prioriteta. Viši prioritet prekida prekidatrenutni prekid. P5 ima najviši prioritet P1 najmanji. Svaka obrada prekida traje tri vremenska intervala t. Prekidi se pojavljuju za redom sa prioritetima p3,p4,p1,p2 i p5 u koracima od t.

prekidi i CPU vrijeme [email protected]; v2.0

Page 5: 1.Auditorne Prekidi Cpu 2013 2014 Cb

5

Obavljanje prekida

9

� Pretpostavimo da računalni sustav ima pet pristupnih sklopova i da su oni razvrstani u pet prioriteta. Viši prioritet prekida trenutni prekid. P5 ima najviši prioritet. Prekidi traju vremenski p1-1t , p2 i p3 -2t, p4 i p5 - 3t . Prekidi se pojavljuju za redom sa prioritetima p3,p1,p4,p2 i p5 u koracima od t.

prekidi i CPU vrijeme [email protected]; v2.0

Obavljanje prekida

10

� Pretpostavimo da računalni sustav ima pet pristupnih sklopova i da su oni razvrstani u pet prioriteta. Viši prioritet prekida trenutni prekid. P5 ima najviši prioritet. Prekidi traju vremenski p1 i p4 -2t, p2, p3 i p5 - 1t . Prekidi se pojavljuju za redom sa prioritetima p4,p3,p2,p1 i p5 u koracima od t.

prekidi i CPU vrijeme [email protected]; v2.0

Page 6: 1.Auditorne Prekidi Cpu 2013 2014 Cb

6

Obavljanje prekida

11

� Pretpostavimo da računalni sustav ima pet pristupnih sklopova i da su oni razvrstani u pet prioriteta. Viši prioritet prekida trenutni prekid. P5 ima najviši prioritet. Prekidi traju vremenski 3t. Prekidi se pojavljuju za redom sa p4 u t p3 u 3t ,p2 u 4t, p1 7t i p5 u 8t

prekidi i CPU vrijeme [email protected]; v2.0

Obavljanje prekida

12

� Pretpostavimo da računalni sustav ima pet pristupnih sklopova i da su oni razvrstani u pet prioriteta. Viši prioritet prekida trenutni prekid. P5 ima najviši prioritet. Prekidi traju vremenski p1-t,p2-2t,p3-3t,p4-4t,p5-t. Prekidi se pojavljuju za redom sa p4 u t p3 u 3t ,p2 u 4t, p1 u 7t i p5 u 8t

prekidi i CPU vrijeme [email protected]; v2.0

Page 7: 1.Auditorne Prekidi Cpu 2013 2014 Cb

7

[email protected]; v2.0 13

CPU vrijeme

prekidi i CPU vrijeme

[email protected]; v2.0

Višezadaćnost

� Dvije vrste višezadaćnosti:

� Iznuđena (preemptive)

� Neiznuđena (non-preemptive)

prekidi i CPU vrijeme

Page 8: 1.Auditorne Prekidi Cpu 2013 2014 Cb

8

Kriteriji za usporedbu performansi

CPU raspodjele poslova� Iskorištenje procesora (CPU utilization)

� Postotak vremena kada je CPU zaposlen (i nije u idle stanju) tijekom nekog perioda

� Propusnost, protok podataka (Throughput)

� Broj poslova koji se izvrše u jedinici vremena

� Vrijeme preklapanja poslova (Turnaround time)

� Vremenski interval od trenutka preuzimanja procesa pa sve do njegovog završetka

� Vrijeme čekanja (Waiting time)

� Suma vremena provedenih u redu u stanju spreman

� Vrijeme odziva (Response time)

� Vrijeme od preuzimanja posla da prvog izlaza/ulaza

� Aproksimirano sa vremenom od preuzimanja do prvog pristupa procesoru

prekidi i CPU vrijeme [email protected]; v2.0

[email protected]; v2.0

Strategije raspoređivanja - FIFO

� FIFO – first in , first put

� FCFS – first come, first serve.

� Glavno obilježje ove strategije je da dretva drži CPU sve dok ne ode u stanje čekanja (waiting) –neiznuđena višezadaćnost

� Objekti koji predstavljaju dretve se smještaju u red (FIFO queue)

� Nova dretva smješta se na kraj reda (tail), a procesor uzima dretvu na izvršavanje sa glave reda (head)

prekidi i CPU vrijeme

Page 9: 1.Auditorne Prekidi Cpu 2013 2014 Cb

9

[email protected]; v2.0

Strategije raspoređivanja - FIFO

� Prednosti strategije:

� Jednostavnost i lakoća implementacije

� Mala broj zamjene konteksta

� Ne može doći do izgladnjivanja jer je redoslijed slijedan

� Nedostatak:

� U slučaju da na red dođe CPU intenzivna dretva koja traje dugo i ne pristupa I/O uređajima zadaće mogu zapeti (nedostaje brza blagajna)

prekidi i CPU vrijeme

[email protected]; v2.0

Strategije raspoređivanja - FIFO

� Prikažimo sva stanja FIFO reda do njegova pražnjenja , ako je trenutno stanje reda D1=2t, D2=3t, D3=1t i u 0t trenutku je CPU slobodan.

� Naknadno u 3t dolazi nova dretva u red D4=1t

prekidi i CPU vrijeme

Page 10: 1.Auditorne Prekidi Cpu 2013 2014 Cb

10

[email protected]; v2.0

Strategije raspoređivanja - FIFO

� Prikažimo sva stanja FIFO reda do njegova pražnjenja , ako je trenutno stanje reda D1=4t, D2=3t, D3=2t i u 0t trenutku je CPU slobodan.

� Naknadno u 3t dolazi nova dretva u red D4=1t

prekidi i CPU vrijeme

[email protected]; v2.0

Strategije raspoređivanja

SJF / SRTF

� Osnovna ideja strategije da prije izvrši dretve koje će kraće vremena trebati za obradu � SJF-Shortest Job First(najkraći poslovi prvi) (STCF – shortest time

to completion first)

� Izvrši one dretve kojima treba najmanje vremena

� Neiznuđena verzija

� Dretva koja se izvršava ne može biti prekinuta

� SRTF-Shortest Remaining Time First (iznuđena verzija SJF)(STRCF – shortest remaining time to completion first)

� Ako dođe dretva koja ima koja ima kraće vrijeme za završetak posla od preostalog vremena trenutnog posla trenutne dretve CPU daje toj novoj dretvi da se izvrši.

prekidi i CPU vrijeme

Page 11: 1.Auditorne Prekidi Cpu 2013 2014 Cb

11

[email protected]; v2.0

Strategije raspoređivanja

SJF / SRTF

� Prednosti

� Privid brzog rada jer se kraći poslovi brzo izvršavaju

� Nedostatak:

�Mogućnost izgladnjivanja budući da mogu stalno dolaziti kratki poslovi, a da se dugi ne stignu izvršiti

� Problem predviđanja budućnosti

prekidi i CPU vrijeme

Strategija SJF - Zadatak

22

� Prikažimo sva stanja SJF algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=2t, D2=3t, D3=1t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na novu dretvu.

� Naknadno u 4t dolazi nova dretva u red D4=1t

prekidi i CPU vrijeme [email protected]; v2.0

Page 12: 1.Auditorne Prekidi Cpu 2013 2014 Cb

12

Strategija SJF - Zadatak

23

� Prikažimo sva stanja SJF algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=4t, D2=3t, D3=2t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na novu dretvu.

� Naknadno u 3t dolazi nova dretva u red D4=1t

prekidi i CPU vrijeme [email protected]; v2.0

Strategija SRTF - Zadatak

24

� Prikažimo sva stanja SRTF algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=2t, D2=3t, D3=1t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na novu dretvu. Vremenski sklop okida prekid svakih 1ms.

� Naknadno u 4t dolazi nova dretva u red D4=1t prekidi i CPU vrijeme [email protected]; v2.0

Page 13: 1.Auditorne Prekidi Cpu 2013 2014 Cb

13

Strategija SRTF - Zadatak

25

� Prikažimo sva stanja SRTF algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=4t, D2=3t, D3=2t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na novu dretvu. Vremenski sklop okida prekid svakih 1ms.

� Naknadno u 3t dolazi nova dretva u red D4=1t

prekidi i CPU vrijeme [email protected]; v2.0

[email protected]; v2.0

Strategije raspoređivanja

Round robin

� Primjer iznuđene višezadaćnosti

� Svakoj dretvi se dodjeljuje vremenski interval (quantum) za izvršavanje instrukcija procesora

� Ako vremenski interval istekne, a dretva nije završila OS prekida izvršavanje (iz stanja running u ready) i dodjeljuje CPU slijedećoj dretvi ( iz stanja ready u running)

� Potreban sklopovski prekid u redovitim vremenskim intervalima (timer)

prekidi i CPU vrijeme

Page 14: 1.Auditorne Prekidi Cpu 2013 2014 Cb

14

[email protected]; v2.0

Strategije raspoređivanja

Round robin

� Red je kružni, dretva koja je prekinuta završava na kraju reda (repu),a u obradu se uzima sljedeća dretva iz reda. Kada dođe nova dretva ona dolazi na kraj reda.

� Kako ispravno odrediti vremenski interval prekida:

� Ako je prevelik vrijeme odziva je loše

� Ako je premali iskoristivost je mala (vrijeme konteksta je postaje sve utjecajnije)

prekidi i CPU vrijeme

[email protected]; v2.0

Strategije raspoređivanja

Round robin

� Prednosti RR strategije

� Osigurana pravednost

� Uz pravilno osiguranu duljinu vremenskog intervala moguće je iskorištenje do maksimalno 90% vremena procesora

� Nedostatak

� Ako poslovi imaju približno isto vrijeme za izvršavanje tada vrijeme izmjene postaje veliko i postavlja se upitno smisao korištenja strategije (rijetki uglavnom industrijski primjeri)

prekidi i CPU vrijeme

Page 15: 1.Auditorne Prekidi Cpu 2013 2014 Cb

15

[email protected]; v2.0

Strategija RR - Zadatak� Prikažimo sva stanja RR

algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=2t, D2=3t, D3=1t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na D1 dretvu. Vrijeme izvršavanja je 1t (uključen kontekst)

� Naknadno u 3t dolazi nova dretva u red D4=1t prekidi i CPU vrijeme

[email protected]; v2.0

Strategija RR - Zadatak� Prikažimo sva stanja RR

algoritma do kraja svih dretvi, ako je trenutno stanje reda D1=4t, D2=3t, D3=2t , u 0t trenutku je CPU slobodan i kazaljka izvršavanja treba prijeći na D1 dretvu. Vrijeme izvršavanja je 1t (uključen kontekst)

� Naknadno u 3t dolazi nova dretva u red D4=1t prekidi i CPU vrijeme

Page 16: 1.Auditorne Prekidi Cpu 2013 2014 Cb

16

Strategija - Zadatak

31

Poslovi Vrijeme

izvršavanja

P1

10

P2

29

P3

3

P4

7

P5

12

� Promatrati će se dodjela procesora prema algoritmima FCFS, SJF i RR s vremenskim kvantom od 10 vremenskih jedinica. Pitanje je koji algoritam daje najkraće prosječno vrijeme čekanja?

prekidi i CPU vrijeme [email protected]; v2.0

Strategija - Zadatak

32prekidi i CPU vrijeme [email protected]; v2.0

Page 17: 1.Auditorne Prekidi Cpu 2013 2014 Cb

17

33

Zadatak

� Izračunaj prosječno vrijeme čekanja za RR (round robin) raspodjelu dretvi

� Dretve:� D1: 24

� D2: 4

� D3: 4

� D1 je prva na izvršavanju

� Vremenski kvant = 4; Izmjena konteksta= 1

34

Prosječno vrijeme čekanja

� D1:0+15=15

� D2: 5

� D3:10

� Average: (D1+D2+D3)/3=10

D1 D2 D3 D1 D1 D1 D1 D1

4 5 9 10 14 15 19 20 24 25 29 30 34 35 39

Page 18: 1.Auditorne Prekidi Cpu 2013 2014 Cb

18

Labos 1

Page 19: 1.Auditorne Prekidi Cpu 2013 2014 Cb

19

Potrebno se predstaviti sustavu

Nakon predstavljanja sustavu

Page 20: 1.Auditorne Prekidi Cpu 2013 2014 Cb

20

Nakon predstavljanja sustavu

Page 21: 1.Auditorne Prekidi Cpu 2013 2014 Cb

21

Page 22: 1.Auditorne Prekidi Cpu 2013 2014 Cb

22