1.Auditorne Prekidi Cpu 2013 2014 Cb

Preview:

DESCRIPTION

Operaciski sustavi

Citation preview

1

ivica.dodig@tvz.hr; v2.0 1

Operacijski sustavi

Prekidi

Tehničko Veleučilište u Zagrebu

prekidi i CPU vrijeme

2ivica.dodig@tvz.hr; 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

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

7

ivica.dodig@tvz.hr; v2.0 13

CPU vrijeme

prekidi i CPU vrijeme

14ivica.dodig@tvz.hr; v2.0

Višezadaćnost

� Dvije vrste višezadaćnosti:

� Iznuđena (preemptive)

� Neiznuđena (non-preemptive)

prekidi i CPU vrijeme

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 15ivica.dodig@tvz.hr; v2.0

16ivica.dodig@tvz.hr; 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

9

17ivica.dodig@tvz.hr; 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

18ivica.dodig@tvz.hr; 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

10

19ivica.dodig@tvz.hr; 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

20ivica.dodig@tvz.hr; 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

11

21ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; 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 ivica.dodig@tvz.hr; v2.0

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 ivica.dodig@tvz.hr; v2.0

26ivica.dodig@tvz.hr; 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

14

27ivica.dodig@tvz.hr; 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

28ivica.dodig@tvz.hr; 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

15

29ivica.dodig@tvz.hr; 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

30ivica.dodig@tvz.hr; 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

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 ivica.dodig@tvz.hr; v2.0

Strategija - Zadatak

32prekidi i CPU vrijeme ivica.dodig@tvz.hr; v2.0

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

18

Labos 1

19

Potrebno se predstaviti sustavu

Nakon predstavljanja sustavu

20

Nakon predstavljanja sustavu

21

22