LUENTO 7. u kaikki prosessit tunnetaan u heräämistaajuudet tunnetaan. u prosessien joukko vaihtelee ulkoisten tapahtumien perusteella

Samankaltaiset tiedostot
VUOROTTAMINEN - YKSI CPU. Stallings, Luku 9. Avoin ja suljettu työkuorma. Tavoitteita: laatu. Vuorottaminen ja prosessien tilat

VUOROTTAMINEN YKSI CPU. II:ssa?

VUOROTTAMINEN YKSI CPU

VUOROTTAMINEN - YKSI CPU. Stallings, Luku 9

VUOROTTAMINEN YKSI CPU

Scheduling. Stallings, Chapter 9. When? Priorities

Käyttöjärjestelmät, Luento 11 WEEK 6. Scheduling. Stallings, Chapter 9. Syksy 2007, Tiina Niklander 11-1

Käyttöjärjestelmät II

LUENTO 8. u erillisten koneiden ryväs (cluster) u hajautettu järjestelmä (distributed system) u erilliset I/O-prosessorit

Käyttöjärjestelmät II

VUOROTTAMINEN SMP JA REAALIAIKAJÄRJESTELMÄT Linux, W2000

Yleiskuva. Käyttöjärjestelmät II. Tietokonejärjestelm. rjestelmä. KJ ja laitteistopiirteet. KJ ja laitteistopiirteitä.

MoViE- sovelluksen käyttöohjeet

Automaatiojärjestelmät Timo Heikkinen

Koulutustilaisuudessa tehtiin kolme ryhmätyötä. Seuraavassa on koonti ryhmätöiden tuloksista.

OHJE POISSAOLOIHIN PUUTTUMISEEN KOULUSSA

Ongelma 1: Mistä joihinkin tehtäviin liittyvä epädeterminismi syntyy?

JFunnel: Käytettävyysohjatun vuorovaikutussuunnittelun prosessiopas

Moniprosessorijärjestelmä

Sisällysluettelo OHJE

VUOROTTAMINEN: SMP ja Reaaliaikajärjestelmät Linux, W2000

Moniprosessorijärjestelmä

Flash ActionScript osa 2

6. Luento: Skedulointi eli Vuoronnus. Tommi Mikkonen,

Sisäkorvaistutteen saaneiden lasten kuntoutuksen ja tulkkauspalvelujen tarkoituksenmukaisuus ja tulevaisuuden tarve. 2. vaiheen haastattelututkimus.

Ongelma 1: Mistä joihinkin tehtäviin liittyvä epädeterminismi syntyy?

pienempää, joten vektoreiden välinen kulma voidaan aina rajoittaa välille o. Erikoisesti on

SPL TAMPEREEN PIIRI: SEURATUTOROINTI

Jakso 8 Ohjelman toteutus järjestelmässä

TUNTIMITTAUSTIEDON AVOIN PALVELUALUSTA Sähkötutkimuspoolin tutkimusseminaari

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?

Prosessi (4) Jakso 8 Ohjelman toteutus järjestelmässä. Prosessi. Prosessin vaihto (4) Prosessin elinkaari (9)

Jakso 8 Ohjelman toteutus järjestelmässä

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

Käyttöjärjestelmän rajapinnat

Käyttöjärjestelmän rajapinnat. Siirräntä: Laiteajurit ja keskeytys. I/O-ohjain. I/O-ohjain. Siirtomenetelmät. Käyttöjärjestelmän rakenne

Luento 8 Ohjelman toteutus järjestelmässä

Jakso 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit

Luento 8 Ohjelman toteutus järjestelmässä. Prosessi Prosessin esitysmuoto järjestelmässä Käyttöjärjestelmä KJ-prosessit

Tämä liite täydentää sopimuksessa määriteltyjä ehtoja tuen käyttämisestä hankkeen eri kululuokissa. Nämä tarkennukset löytyvät II osasta.

1. Turvaohje. 2. Tuotteen Ominaisuudet DIGISCALE 1000

KITI - kilpailu anomuksesta ajoon. Ohjeistus kilpailujen anomisesta ja muokkaamisesta KITIssä.

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

Käyttöjärjestelmät: poissulkeminen ja synkronointi

Tämä ruutu näkyy ainoastaan esikatselutilassa.

Tervetuloa GoGolfin Green Card -kurssille

OrSi yhdistää. hyvät ideat ja toteuttajat. Organisaatioidenvälinen sidosryhmäviestintä. Algoplan Oy Ryytimaantie Helsinki

Ohjeita linja- ja aikatuomareille

Luento 8 Ohjelman toteutus järjestelmässä

CMU 119 CMU 128 CMU 119 +N CMU 155 CMU 128 +N. Asennusohje Ohjelmoitavat terrestiaalipäävahvistimet. SSTL n:o

Luento 4 Tekstinkäsittelyn perusperiaatteita, tyylit, sarkaimet Aulikki Hyrskykari

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Geometrinen piirtäminen

Luento 2 Moodle ja sähköposti, O Aulikki Hyrskykari

Antti Vähälummukka Lähde: ja muita

Sisältöä PROSESSIT JA NIIDEN HALLINTA. Prosessi. Prosessi virtuaalimuistissa. Prosessi. Prosessi virtuaalimuistissa. Käyttöjärjestelmät

Prosessi perinteisesti

Stallings, Luku 4.1. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Muistilistan tarkoitus: Valvotaan lain toteutumista sekä tavoitteiden, toimenpiteiden ja koulun tasa-arvotyön seurantamenettelyn laatua.

Käyttöjärjestelmät. Teemu Saarelainen Tietotekniikka

Aineistoa hankitaan laajasti ja monipuolisesti asiakkaiden erilaisiin tarpeisiin. Suosituksena on hankkia kirjaa/1000 asukasta.

KJ-II K2006 / Auvo Häkkinen - Teemu Kerola Tehtävät, staattinen vs. dynaaminen partitiointi, Buddy System sivutus, segmentointi

Kuopion kaupunki Pöytäkirja 1/ (1) Kaupunkirakennelautakunta Asianro 201/ /2016

FC HONKA AKATEMIAN ARVOT

Uniapneaoireyhtymää sairastavien aikuisten kuntoutuskurssit, osittaiset perhekurssit

KJ-II K2006 / Auvo Häkkinen - Teemu Kerola

HENKKARIKLUBI. Mepco HRM uudet ominaisuudet vinkkejä eri osa-alueisiin 1 (16) Lomakkeen kansiorakenne

Finnish Value Pack Julkaisutiedot Vianova Systems Finland Oy Versio

OPISKELIJOI- DEN TULOSTAMI- SESTA

Jakso 8 Ohjelman suoritus järjestelmässä

Jakso 8 Ohjelman suoritus järjestelmässä

KOLMIPORTAINEN TUKI ESIOPETUKSESSA (POL 16, 16a, 17, 17a )

Prosessi virtuaalimuistissa PROSESSIT JA NIIDEN HALLINTA. Sisältöä. Prosessi virtuaalimuistissa. Prosessi. Prosessi. Käyttöjärjestelmät, Luento 4

PROSESSIT JA NIIDEN HALLINTA

Omaishoitajienkuntoutuskurssit

Osio 3: Prosessit, siirräntä ja tiedostojärjestelmä

Prosessi (4) Luento 8 Ohjelman toteutus järjestelmässä. Prosessi. Prosessin vaihto (4)

Sisältö SIIRRÄNTÄ. I/O-laitteiden luokittelua. Yleistä siirrännästä. Siirrännän perustekniikat. Siirtonopeuksia (teoreettisia) Kuva 11.

Basware Konsernitilinpäätös Forum Ajankohtaista pörssiyhtiön raportoinnissa

Sisältöä SÄIKEET, SMP

Luento 8 Ohjelman toteutus järjestelmässä. Tietokonejärjestelmä. Prosessi (4) Prosessi. Prosessin elinkaari (11) Prosessin vaihto (3)

Lukkiutuminen. Taustaa Aterioivat Filosofit Ennaltaehkäisy Havaitseminen Välttely. Andrews 4.3 Stallings (tai mikä tahansa KJ-kirja)

VAPAAEHTOISTOIMINTA OPPIMISKOKEMUKSENA

Lukkiutuminen. Taustaa

4-13. Ratkaisu 4: OK, mutta... vrt. 2. Ratkaisu 3: OK. Ratkaisu 5: OK? Nälkiintyminen?

Lähtötiedot tiedot / seuraavaksi? Käyttöjärjestelmät II MUISTINHALLINNAN OHJELMISTO. Looginen vs. fyysinen osoite Perusvalinnat.

Aloite toimitusvelvollisen myyjän taseselvitystavan muuttamisesta

KURINPITO- JA TOIMINTAPAOHJEISTUS (Laki ammatillisesta koulutuksesta 531/2017, 9 Luku, 80-93)

Prosessit ja säikeet SMP, Mikroytimet W2K säikeet

Ominaisuus- ja toimintokuvaus Idea/Kehityspankki - sovelluksesta

Liikkujan polku mitä, miksi ja miten? #LiikkujanPolku

Fysiikan labra Powerlandissa

Hakemuslomake: Kevan työelämän kehittämisraha vuonna 2019

Tervetuloa Liikkujan polku verkoston kolmanteen verkostotapaamiseen! #liikkujanpolku

Opinpaletin koulutustarjonta

Algoritmit 1. Luento 4 Ke Timo Männikkö

SÄIKEET, SMP. Sisältöä. Stallings, Luku 4. Prosessi vs. säie Miksi säikeitä? ULT: Käyttäjätason säikeet KLT: Säikeiden toteutus ytimessä

KITI - kilpailu anomuksesta ajoon. Ohjeistus kilpailujen anomisesta ja muokkaamisesta KITIssä.

Transkriptio:

Käyttöjärjestelmät II VUOOTTAMINEN YKI CPU tallings, Ch 9 [tal[ 0] LUENTO Mitä KJ-I:ss ssä / KJ-II:ssa II:ssa? KJ-I eady-jn, valitse ensimmäinen Aikaviipaletekniikka (rund-rbin) Pririteetitkin mainittiin euraavaksi KJ-II:ssa Vurttamisen tast CPU:n vurttamisalgritmeja Vurttaminen UNIXissa Yhden CPU:n ympäristössä (Ch 9) MP:ssä ja reaaliaikajärjestelmissä (Ch 10) luent luent 8 1 Vurttamisympärist ristöt, t, työkurma Eräaj u ajetaan vaikkapa yöllä u työn kk sataan arviida F esim. ajetaan jka yö, viikttain, kuukausittain u tapahtumahjattu vurttaminen OK F kunhan kaikki saadaan tehtyä Interaktiivinen u käyttäjä dttaa vastausta, npea vastaus hyvä u vurttajalla ei harmainta aavistusta työn keststa u aikaviipaletekniikka eaaliaika u aikarajat u hjelmijakin miettii surituskykyä ja millin KJ saa suritusvurn Avin ja suljettu työkurma Deterministinen (suljettu) työkurma u kaikki prsessit tunnetaan u heräämistaajuudet tunnetaan Avin työkurma u prsessien jukk vaihtelee ulkisten tapahtumien perusteella Hetergeeninen työkurma u deterministinen + avin F esim. lennn valvnta, lentpintjen hjaus F arriving missiles pikkeus? vai deterministinen jka 100 ms? u eräaj + interaktiivinen + reaaliaika u miten svittaa yhteen F jääkö avimille reaaliaikatöille tarpeeksi aikaa? F jääkö KJ:lle tarpeeksi aikaa? Tavitteita: laatu amanarvisille prsesseille sama palvelu Pririsintia saa harrastaa u turvakntrlli vs. palkanlaskenta u KJ prsessit vs. käyttäjän svellukset u reaaliaika prsessit vs. muut Interaktiiviset vs. eräajjärjestelmät Vastausaika (respnse time) u työ annettu, millin saadaan vastaus? Läpimenaika (turnarund time) u työtä per aikayksikkö Ennustettavuus (predictability) u ei sen näin pitkään pitäisi kestää u rskien keruu, muu kj-hallint Tbl 9. [tal0] Linux. O(1) vurnant Tavitteita: surituskyky Ota järjestelmästä mahdllisimman paljn irti u pidä CPU ja erityisesti I/O-laitteet tuttavassa työssä F krkea käyttöaste (CPU utilizatin) u tärkeää mniajjärjestelmissä Tehkas ja reilu CPU:n käyttö u läpimenaste, läpimenvu (thrughput, wrk flw) u läpimenaika (turnarund time, respnse time) eaaliaikajärjestelmä pysyy aikataulussa u deadlinen ylitys vi lla harmillista tai vaarallista F kuvassa n häiriö, ääni/kuva epäsynkrnisia F ptilas kulee, lentkne tippuu,... Tbl 9. [tal0] KJ-II K00 / Teemu Kerla (lu ) 1

Käyttöjärjestelmät II MILLOIN VUOOTETAAN? Millin? Fig 9. [tal0] Fig 9. [tal0] Lng-term systeemiin? u tetaank uusi prsessi suritettavaksi? u mahtuuk muistiin? riittääkö swap-tila? Medium-term muistiin? u millin (heittvaihdettu) prsessi muistiin? u vapaata muistia? u mniajaste? hrt-term surittimelle? u mille prsessille annetaan CPU? I/O I/O-laitteelle? u minkä prsessin I/O pyyntö palvellaan ensin? 8 Lng-term cheduling Otetaank uusi työ suritettavaksi? u millin työstä tulee prsessi? u saak kneeseen luda uuden istunnn? atkaisevaa: mniajaste medium term? u paljn prsesseja kukin saa harvin CPU:n u js vähän muistia, niin nk parempi dttaa lng term vai medium term? Fig 9. [tal0] u pyritään takaamaan riittävän taskas palvelu u spiva suhde: CPU- ja I/O-sidnnaiset työt? Millin? u jku prsessi päättynyt u CPU:n käyttöaste pudnnut Mikä? Fig 9. [tal0] u First-Cme-First-erviced (FCF) u jskus pririteetteja: esim. työn kk, I/O-sidnnaisuus 9 Medium-Term cheduling Liittyy heittvaihtn u sisäänheitn ajitus Fig 9. [tal0] u prsessi tilassa uspend&eady tai uspend&wait Millin muistiin? u CPU:n käyttöaste laskenut u vapaata muistitilaa runsaasti Mikä muistiin? u kk (eli dttavan prsessin muistitarve) u ulsheittaika (eli dtusaika levyllä) u pririteetti Mikä muistista pis? u ei sellainen, jlla tärkeä resurssi hallussa F kriittinen vaihe? u ei KJ prsessi? 10 hrt-term cheduling CPU:n vurttaminen (scheduling, dispatching) u yleisterminä vurttaminen tarkittaa juuri tätä elvästi yleisempi kuin edelliset Millin? u keskeytyksen yhteydessä F jkainen keskeytys ei aiheuta vurttamista Kun nykyprsessin kyky käyttää suritinta mennyt u jutui Blcked-tilaan: I/O, synkrninti, pissulkeminen u pikkeustilanne u prsessi käyttänyt man aikaviipaleensa uuremman pririteetin työ valmis etenemään Kenelle vur seuraavaksi? Fig 9. [tal0] Käyttöjärjestelmät II PIOITEETTI 11 1 KJ-II K00 / Teemu Kerla (lu )

Pririteetti uuremman pririteetin prsessit ensin u pririteetti PCB:ssä / TCB:ssä Kullakin pririteetilla ma eady-jn u lisää aina lppuun u haku vi kestää, kun mnta jna Vs. yksi yhteinen eady-jnssa u pririteetti määrää paikan u npea haku (vain yksi jn) u lisäys pririteetin mukaiseen paikkaan F vi lla turhan mnimutkaista eli hidasta Nälkiintymisvaara u vaihteleva pririteetti trjuu nälkiintymisen? F prsessin ikä F suritushistria F vaihtelun rajat? Fig 9. [tal0] 1 Kiinteä ja vaihteleva pririteetti KJ-prsessit Tavalliset user-prsessit high pri 0 1 1 18 19 10 11 19 lw pri missile avidance prcess flight surface cntrl kiinteä navigatin pri lad cntrl swapper cleaner kiinteä pri dttanut kauan jnssa calculatr (18-10) vaihteleva pri käyttänyt paljn CPU-aikaa (esim. kk aikaviipale) 1 Millin vurtus aktivituu? Nnpreemptive u tapahtumahjattu vurttaminen u prsessi surituksessa, kunnes se päättyy tai jutuu palvelupyyntönsä vuksi blcked-tilaan u suritusaikana vi silti lla keskeytyksiä ja KJ työtä! F scheduler ei aktividu paitsi ehkä KJ-prsesseille? Preemptive u keskeyttävä vurttaminen F prsessi ei vi nälkiinnyttää muita u suritus keskeytetään ja prsessi eady-tilaan, vaikka visikin käyttää suritinta F aikaviipaletekniikka F suuremman pririteetin prsessi tuli eady-jnn pre-empt: mennä edelle, ttaa itselleen etuikeuden njalla Käyttöjärjestelmät II CPU:N eaaliaikaprsessit VUOOTTAMI- ALGOITMEJA 1 1 Algritmit First-Cme-First-erved und bin Virtual und bin hrtest Prcess Next hrtest emaining Time FCF PN V T Highest espnse ati Next HN Multilevel Feedback feedback Esimerkkiprsessit (Tbl 9. [tal0]) Fair hare cheduling F ervice Time = CPU:ssa kulutettu aika Esimerkeissä ei mietitä I/O:n vaikutusta 1 18 KJ-II K00 / Teemu Kerla (lu )

FCF First Cme First erved (keskim.) cpu time fr B (Fig 9. [tal0]) arrival time fr B Eräaj, tapahtumahjattu, ei pririteetteja Uusi prsessi eady-jnn hännille Tbl 9. [tal0] Kun prsessi lupuu CPU:sta, vurta seuraava Ketä susii? Ketä ei? 9 1 1 keskim. 8. cmpletin time fr B FCF First Cme First erved Läpimenaika u riippuu suritusjärjestyksestä, Fig 9. [tal0] muiden ksta sekä CPU-sidnnaisuudesta Pienikin prsessi vi jutua dttamaan u läpimenajasta valtava sa dtusta usii CPU-sidnnaisia u muille vi tulla pitkä dtusaika u I/O-laitteet ehkä turhaan juten F I/O kuitenkin pullnkaula Järkevää ttaa mukaan pririteetit u pririteetin perusta? F prsessin kk (suritin aika)? F I/O-sidnnaisuus? 19 0 und bin aikaviipaleen vaikutus (keskim.) (Fig 9. [tal0]) 1 1 1 keskim. 10.8 (keskim.) (Fig 9. [tal0]) 1 1 11 keskim. 10.0 Aikaviipaletekniikka (q=1), keskeytyvä (preemptive) Kukin eady-prsessi saa vurllaan aikaviipaleen Vurttaminen, kun viipale käytetty tai kun prsessi jutuu Blcked-tilaan Aikaviipaletekniikka q = u prsessin vaihtaikaa ei humiitu! usiik pitkä aikaviipale cpu- vai I/O-sidnnaisia? usiik pitkä aikaviipale lyhyitä vai pitkiä töitä? 1 und bin Aikaviipaleen pituus u lyhyt: prsessin vaihdt vievät CPU-aikaa Fig 9. [tal0] u pitkä: interaktiivisen työn vastausaika lyhyt, js yksi aikaviipale riittää usii hieman CPU-sidnnaisia u I/O-sidnnainen ei ehkä käytä kk viipaletta u I/O-sidnnainen saa suhteessa harvemmin CPU:n F miksi? Virtual u ready-jnn apujn (Auxiliary eady Queue), jnne I/O-dtuksesta Fig 9. [tal0] F pririteetti I/O sidnnaisilla u aja ensin apujnssa levat prsessit u aikaviipale vain edellisellä kerralla käyttämättä jäänyt sa, sitten nrmaaliin eady-jnn PN hrtest Prcess Next (keskim.) Tapahtumahjattu (siis nn-preemptive) Vurta se, jka käyttää lyhimmän ajan CPU:ta kerrallaan u I/O-sidnnaiset ensin u mistä tietää? (Fig 9. [tal0]) 11 1 keskim.. KJ-II K00 / Teemu Kerla (lu )

PN hrtest Prcess Next Nälkiintymisvaara u is jää aina pienten jalkihin Isjen läpimenaika vaikea ennustaa Erätyö: käynnistäjä arvii työn kestajan u js työ laitettiin väärään eräajlukkaan, KJ saattaa katkaista työn F miksi? (kulutti liikaa aikaa estimaattiin nähden) F käynnistettävä uudelleen ismpien lukassa Interaktiivinen: KJ laskee keskim. CPU:n käyttöaikaa u painttaa viimeksi havaittuja aikja (T n-1 ) u estimi estim estim n = αt n-1 + (1 - α) n-1 Ei svellu situskäyttöympäristöön esim α = 0.8 T hrtest emaining Time (keskim.) Aikaviipaleversi edellisestä (keskeytyvä) u tilanne arviidaan uudelleen jka aikaviipaleelle Arviitava prsessin jäljellä leva ajantarve Ei svi interaktiiviseen ympäristöön (Fig 9. [tal0]) 1 1 keskim.. HN Highest espnse ati Next (keskim.) (Fig 9. [tal0]) Tapahtumahjattu (siis nn-preemptive) Minimi läpimenaikaa (humii histria) Vurta se, jlla hunin suhteellinen vasteaika, ts. se, jlla suurin suhdeluku: time spent waiting CPU + expected service time respnse rati = ------------------------------------------------------------- expected service time / > 1/ 9 1 keskim. 8.0 HN Highest espnse ati Next usii hieman lyhyitä töitä u ei silti nälkiintymisvaaraa Dynaaminen pririteetti u ready-jnssa dttelu kasvattaa pririteettia Jäljellä levaa aikaa ei vi tietää u arvit menneisyyden perusteella u käyttäjän antama arvi työn ksta F ei svi interaktiiviseen ympäristöön 8 Multilevel Feedback (Fig 9.10 [tal0]) Feedback Dynaaminen pririteetti u ankaisee pitkään pörränneitä prsesseja, aikaviipalitu Useita eady-jnja u Q0: pura aikaviipaleittain, FCF, siirrä seuraavaan jnn u Q..Qn-1: pura aikaviipaleittain, FCF, siirrä seuraavaan jnn u Qn: pura aikaviipaleittain,, pidä samassa jnssa Prsessi kulkeutuu lpulta Qn-jnn, jsta se aikanaan valmistuu Nälkiintymisvaara u vurttaa alemmassa jnssa levat aina ensin Useita variaatiita u esim. alemmissa jnissa pitempi aikaviipale (esim. 1,,, ) u palaa blcked-tilasta samaan jnn 9 0 KJ-II K00 / Teemu Kerla (lu )

Feedback q=1 1 1 1 1 1 (keskim.) (Fig 9. [tal0]) 18 1 1 keskim. 10.0 Feedback q= i virhe 1 1 1 1 1 1 1 1 (Fig 9. [tal0]) (keskim.) keskim. 10. Jnt Q0, Q1, Q, Aikaviipale q=1 Ei vaadi etukäteisarviita CPU-ajan tarpeesta Pitkät työt vivat kestää kauan Jnt Q0, Q1, Q,, Qi Aikaviipale q= i Vaikutus, vrt. q=1 Fig 9. [tal0] 1 Yhteenvet Tbl 9. [tal0] Käyttöjärjestelmät II UNIX V / BD. VUOOTTAMINEN UNIX: Vurttaminen Interaktiivinen ympäristö u ei varsinaista eräaja, ei erätyöjnja u at-kment hjelmien ajamiseksi myöhemminkin u crntab peridisille töille crn = chrngram deamn? tab = table Pyrkii hyvään vastausaikaan u taustaprsesseilla hun pririteetti Aikaviipaleet, und-bin Multilevel feedback u pririteeteilla mat eady-jnt u tyhjentää suurimman pririteetin jnn ensin u dynaaminen pririteetti ei nälkiintymistä UNIX: eady-jnt (Fig 10-11 [Tane01]) KJ-II K00 / Teemu Kerla (lu )

UNIX: Pririteetti Kiinteä peruspririteetti sekä nice-arv u käyttäjä vi pienentää pririteettia nice-kmennlla u pitää pririteetin siististi tietyllä arvalueella Laskee uuden pririteetin sekunnin välein u is aikaviipale! CPU:n käyttö vaikuttaa uuteen arvn u käyttö: pririteetti putaa u dttaa kauan: pririteetti kasvaa usii I/O-sidnnaisia prsesseja u tavite: I/O-laitteiden tehkas työllistäminen UNIX: multilevel feedback CPU_usage = CPU:n käyttö äskettäin u laskuri PCB:ssä Älä rankaise liikaa aiemmasta käytöstä u pulita ennen pririteetin laskentaa, ja sitten taas CPU_usage = CPU_usage/ Pri = Base + (CPU_usage/)+ Nice (js ei cpu_usage = 0, niin ei muutsta) Pieni arv = suuri pririteetti Esimerkki u Base=0, Nice = 0 u päivitä cunter (CPU_usage) 0 kertaa/sek F kelllaite keskeytys 1. ms välein? F tanta: kenellä suritin keskeytyshetkellä? u päivitä pririteetti sekunnin välein Fig 9.1 [tal0] 8 Fair-hare cheduling Tutki myös kuka prsessin mistaa (wner) u ettei hulivili vi tukkia järjestelmää Käsittele yhden käyttäjän prsesseja / säikeitä ryhmänä u ryhmän vaikutus nice termin asemesta u vurttelu edelleen prsessi- / säietaslla u pidettävä myös kirjaa paljnk ryhmä saanut CPU:n kknaisajasta (GCPU_cunter) u ryhmällä vi lla pain W, jka määrää millaisen suuden se saa kk (cpu-aika) kakusta Käytössä useissa UNIX-järjestelmissä u HP-UX, IBM AIX WLM, un laris M u ryhmä vi perustua käyttäjään tai prsessiin tai svellukseen F - Fair-hare cheduling Pririteetin määrittäminen CPU_cunter = CPU_cunter/ GCPU_cunter = GCPU_cunter/ Pri = Base + CPU_cunter/ + GCPU_cunter/(*W grup ) Esimerkissä u Base = 0 u W A = 0. ja W B+C = 0. (W A + W B+C = 1) u päivitä laskurit 0 kertaa sekunnissa u päivitä pririteetti sekunnin välein is W grup pieni painarv GCPU_cunter:lla pieni Pri arv is pririteetti Fig 9.1 [tal0] 9 0 Kertauskysymyksiä Millin vurtetaan? Tapahtumahjattu (nn-preemtive) vs. keskeytyvä (pre-emptive) vurttaminen Miten FCF ja und-bin algritmit eravat tisistaan? Millaisiin tilanteisiin ne spivat? Mikä F algritmin perusidea? Mitä hyötyä n käyttää pririteetteja? Mitä hyötyä n vaihtelevan pririteetin käytöstä? 1 KJ-II K00 / Teemu Kerla (lu )