Osio 2: Luennot 5-8 Muistinhallinta

Samankaltaiset tiedostot
Osio 2: Luennot 5-8 Muistinhallinta

Osio 2: Luennot 4-7 Muistinhallinta

Osio 2: Luennot 4-7 Muistinhallinta YKSINKERTAINEN MUISTINHALLINTA. ltöä YLEISTÄ MUISTINHALLINNASTA. Looginen muisti.

MUISTINHALLINTA. Stallings, Luku 7

Sisältöä MUISTINHALLINTA. Stallings, Luku 7. Fyysinen muisti YLEISTÄ MUISTINHALLINNASTA. Looginen muisti. Prosessin rakenne

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

ltöä (Luennot 5&6) Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS Pikakertaus: : a) b) c) Dyn.. part.: sijoitus Kuva Buddy System: esimerkki

Stallings, Luku 7. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 6-1

MUISTINHALLINTA. Stallings, Luku 7

Luento 7: VIRTUAALIMUISTIN SIVUTUS JA SEGMENTOINTI

Kuva 8.7. u Muunnos prosessin sivunumerosta sivutilanumeroksi u Kussakin alkiossa: u Katenoimalla. u MMU:ssa; juuri äsken käytettyjä muunnoksia

ltö Luento 6: VIRTUAALIMUISTI Luento 7: Segmentointi Segmentointi ja sivutus yhdistettynä Yhteiskäytöstä Suoritus virtuaalimuistissa

Luento 6: VIRTUAALIMUISTI

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 8-1

Käyttöjärjestelmän rakenne

Stallings, Luku 4.1. KJ-I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 4-1. KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen 12-1

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

u saantimenetelmät u kirjanpito vapaista lohkoista (taltiolla!) u hierarkkinen hakemistorakenne: kirjanpito tdstoista u tdstojen käyttö

VIRTUAALIMUISTI. Stallings, Luku 8.1

Käyttöjärjestelmät: prosessit

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa

u vapaakäyntisyys (reentrancy) u Yhteinen koodialue u kullakin oma data-alue, pino, PCB u osoitteet suhteellisia prosessin alun suhteen

VIRTUAALIMUISTI. Stallings, Luku 8.1

Sisältö VIRTUAALIMUISTI. Stallings, Luku 8.1. Suoritus virtuaalimuistissa. Suoritus virtuaalimuistissa. Puutoskeskeytys. Suoritus virtuaalimuistissa

Luento 3: PROSESSIT JA NIIDEN HALLINTA

Käyttöjärjestelmät II

Luento 9 Järjestelmän ulkoinen muisti

Luento 9 Järjestelmän ulkoinen muisti

Stallings, Luku 8.1. KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 7-1

RJESTELMÄ OSA 2 Stallings, Luku PALVELUPYYNNÖT. KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

Luento 9 Järjestelmän ulkoinen muisti

Stallings, Luku

Luento 9 Järjestelmän ulkoinen muisti

Käyttöjärjestelmät II

Luento 9 Järjestelmän ulkoinen muisti

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus.

Tietokoneen toiminta (Computer Organization I)

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

Prosessi perinteisesti

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

Tietokoneen toiminta (Computer Organization I)

Osio 3: Siirräntä ja tiedostojärjestelmä

Tietokoneen toiminta (Computer Organization I)

Muistihierarkia (4) Luento 9 Järjestelmän ulkoinen muisti. Ohjelman muistiosoitteet (3) Virtuaalimuisti (3) Virtuaalimuistin toteutus (2)

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Tietokoneen toiminta, K Tavoitteet (4)

NTÄ. Luento 8: SIIRRÄNT. Osio 3: Siirräntä ja tiedostojärjestelmä. ltö. Yleistä siirrännästä. Siirtonopeuksia (teoreettisia) Kuva 11.1.

Tietokoneen toiminta (Computer Organization I)

ltöä rjestelmä Luento 2: LAITTEISTOSTA Tietokonejärjestelm KESKUSYKSIKKÖ Keskusyksikkö Kuva 1.1 KJ-I S2005 / Tiina Niklander & Auvo Häkkinen 2-1

Stallings, Luku 1. KJ-I S2043 / Tiina Niklander Auvo Häkkisen kalvojen pohjalta 2-2. KJ-I S2003 / Auvo Häkkinen 2-1

Luento 2: LAITTEISTOSTA

Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Luento 0: Kurssihallinto Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Käyttöjärjestelmät TIEDOSTOJÄRJESTELMÄ. Stallings, Luku KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 8-1

Käyttöjärjestelmät: Virtuaalimuisti

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

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1

PROSESSIT JA NIIDEN HALLINTA

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

Muistihierarkia Kiintolevyt I/O:n toteutus

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

Ohjelmoinnin perusteet Y Python

LUENTO 0. Tervetuloa! Käyttöjärjestelmät II 2 ov Teemu Kerola. Helsingin yliopisto Tietojenkäsittelytieteen laitos

RJESTELMÄ Stallings, Luku KJ-I I S2005 / Tiina Niklander, kalvot Auvo HäkkinenH

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

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

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

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

MUISTINHALLINNAN OHJELMISTO

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

Palvelut. Sulautetut järjestelmät Luku 2 Sivu 1 (??) Sulautetut käyttöjärjestelmät

KJ-I I S2004 / Tiina Niklander, kalvot Auvo Häkkinen Stallings, Luku

u saantimenetelmät Kenttä (field) u bittien / tavujen muodostama looginen kokonaisuus u yksi arvo, jolla tyyppi ja pituus Tietue (record)

Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

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

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

1. Keskusyksikön rakenne

Järjestelmän ulkoinen muisti I/O

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

Helsingin, Jyväskylän, Oulun, Tampereen ja Turun yliopisto Matematiikan valintakoe klo 10 13

Algoritmit 2. Demot Timo Männikkö

Stallings, Lukua 2. KJ-I S2004 / Tiina Niklander, kalvot: Auvo Häkkinen 3-2. KJ-I I S2004 / Tiina Niklander, kalvot: Auvo Häkkinen 3-1

ARKISTOLUETTELO. Kopio SIVISTYSTOIMI KESKITETYT PALVELUT ORGANISAATIO JA TOIMINTA PÄÄTÖKSENTEKOMENETTELY LAKKAUTETUT TOIMIELIMET URHEILULAUTAKUNTA

MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Stallings, Luku 8.2

Ongelma(t): Jotta tietokone olisi mahdollisimman yleiskäyttöinen ja suorituskykyinen, niin miten tietokoneen resurssit tulisi tarjota ohjelmoijalle,

Moniulotteista ja moniammatillista yhteistyötä muutosten keskellä

Käännös, linkitys ja lataus

TK Palvelinympäristö

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tervetuloa! (2 ov,, 4 op) KJ on tärkein tietokoneessa pörräävistä ohjelmista

Sivun koko. Perusvalinnat. Sopiva sivukoko? Sivun koko? MUISTINHALLINNAN OHJELMISTO: Sivutuksen algoritmit. Käyttöjärjestelmät, Luento 9

Algoritmit 1. Luento 3 Ti Timo Männikkö

Muistihierarkia Kiintolevyt I/O:n toteutus

K Ä Y T T Ö S U U N N I T E L M A Y H D Y S K U N T A L A U T A K U N T A

Ohjelmoinnin perusteet Y Python

TAMPEREEN TEKNILLINEN YLIOPISTO

Muistinhallinta. Tietokoneen rakenne. Stallings: Ch Heittovaihto vs. Virtuaalimuisti Esim: Pentium. Luento 5-1

Transkriptio:

&'()*),+.-/' 01-/2 ) 2 4!56' )7 Käyttöjärjestelmät I Osio 2: Luennot 5-8 Muistinhallinta Tiina Niklander; kalvot Auvo Häkkinen!"#$% # Stallings, Luku 7 Tietojenkäsittelytieteen laitos Helsingin yliopisto KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-2 8:9 ' 4;) + ' <>=?A@ BCFE GIHJ@ BCK@ LJMNA= = @ LJLNOBCFNP R SFTFSJUFV WYX <>Z[B[@ LJZ?A\YCFNA@ L?ALIGIHJ@ B[CK@ LJMNA= = @ LCFN NA]*ZJ@ @ LCF?JEJC,^N*\YCK@ CK@ _AZ_J_JC`P R SKTFSJUFV afx bj]ac[d[lnjnagi@ B?AC,^NA\YCK@ CK@ _AZ_J_ACeP R SFTFSJUFV afx f ]*g HcJc[dih*dBCF?AGjP R SFTFSJUFV afx ca]od[zb[@ LJZ?*\YCFNA@ L?AL.B?JkAGl?ALCF_A@ LJCK@[P R SFTFSJUFV mkx?a]od[zb[@ LJZ?*\YCFNA@ L?AL.B[@ n[hjckhblp R SFTFSJUFV ofx <>Z[B[@ LJZ?A\YCFNA@ L?ALIp ^J\Y_OB?[BqB[@NA@ LN Z_AZ_ALNJNALIGIHJ@ B[CK@ BqBN CFNA@ Z_AZ_ALNJNALI=?[nd[= = E &'()*),+.-/' 01-/2 ) 2 4!56' ) 77 w { rst:7 8"uv x7 8"u 7yz%{ss 7yy%{ 8"u KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5 - KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-4 }( ( 9!~ 22 ~ ~ 5 99 ) 99 ddqb[@ L?ALIGIHJ@ BCK@ ƒ[ B[@ CFE}n_A@J^_ACKZNA@ BCFNJ muistiavaruus laitteisto (MMU, väylät) käyttää fyysisiä osoitteita?[b[zjh[b[gihj@ BCK@ koodin + käsiteltävän datan suoritusaik. tallennus joukko peräkkäisiä tavuja ˆ HJZJ@ GIHJ@ BCK@ tiedon (ohjelmat, data) pysyvä tallennus joukko peräkkäisiä lohkoja h`@ @ \YCF_ LEA@ cj?al}nea= @ = = E GIHJ@ BCK@ LJMNA= = @ LJLNALŠ N CK@?JcJ_OBCF_Œ EA\?[B[CF?A= GlEALI=?A@ ^EJC dacfe mahd. automaattisesti KJ:n toimesta s ŽŽ 9!~ 22 ~ ~ 56 99 ) 99 ^J\Y_OB?[BqB[@ Ll_[B_A@ CF?JN[nNA\FHJH[B loogiset osoitteet eli virtuaaliosoitteet n_a@_a= = NB[HJHJ\Y?AGI^J@JZJHJ@ L. YdqdqB[@ L?ALIGIHJ@ BCK@ ZJHJ= = NAZJ@ LI^J\Y_OB?[BqB[@ = = NI_AGlNI_[B_A@ CF?JN[nNA\FHJH[B osoitteet suhteellisia alun suhteen (0..MAX) B_On?A= = HB NAZNJNALCKHJHI= _J_JkA@ B?OBCK@JGl_JcAHJHJ=?A@ MJ@ L ne voidaan tehdä eri aikoina, osoitteiden paikkaus linkityksessä erilaisia käyttöoikeuksia koodi R (vapaakäyntisyys) data R / W / RW osa moduuleista tarkoitettu yhteiskäyttöön KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-5 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-6 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-1

"0*Ž 2 9!~ 0 2 ~~ 22 g M1?A= GlN NA= H? NACFN NA= H? @ L_INA= H?J?AL = _A^JHBBN h`hjmcf?j?a= = @ B[@ N n[@ @ CFCFNAHJZB[@ N ^J\Y_OB?[BqB[@ L _AGlNA= = N GIHJ@ B[CK@ NA= H?J?A= = N rr 44 22 99 ) ' 56 99 ) 9!~ 4!4 9!~~ ) <>CK@ Gl?A= =?}n_a@ cjnjnal.bna= = @ N ZJ@ @ LCF?JE ^NA@ ZJZN GIHJ@ B[CK@ BqBN voi käyttää suoraan fyysisiä osoitteita _A^J^JH LIGIHJ@ = =?I_[B[@ = =? NB_[n?A= = HJZB[@ = =? MJH_A=?AMCK@ @[B[@ @ CFEAƒ?JCFCFE GIHJ@ BCK@ @ LIGlNAMCKHJH GlNAMc JGl_ALCFN ^A\Y_[B?[BqB[@ N vapaan / varatun tilan hallinta NA@ CKCF?A@ BCF_ MJH_A=?AMCK@ @[B[@ @ CFEAƒ?JCKCF?A@ nejc,^j\y_ob?[bqb[@ C B_ACKZ?ICF_A@ B[@ NJNAL MMU KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-7 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-8 w w 99 ) 9!~ 4!4 9!~ ) ) 99 56 99 `NA^NJNB[@ _A@ CF?JCFCFNOn[HJHB?A@ CKCF_[nNA@ MCF_ KJ voi siirtää prosesseja välillä levylle KJ voi ottaa suoritettavaksi useampia prosesseja prosessin paikka voi vaihdella suorituksen aikana M1?A= Gl_A@ NI?A@n_A@JCK@?JCFEJE GI@ LJL?A^EA@ LIGIHJ@ BCK@ N B_On?A= = HBiB[@ _A@ CKCKHJH.B[H_A\F@ CKHBNA@ ZNALN suhteelliset osoitteet >@ @ CFCFNAHJZB?JC YddqB[@ ZB[@_OB_A@ CFCF?A@ ZB[@[n[@ @ Gl?A@ BCFEJEAL?ALJL?ALIGIHJ@ B[CK@ L_AHCF_JN CFNA= =?ACKHBCFN _ALNA@ ZNA@ L?ALl_OB_A@ CF?AGIHJHJLJL_[B! BqBN w w 99 ) 9!~ 4!4 9!~ ) ) 99 56 99 h`h_œ NAHB HnNACFCFNI?A@BNJN ZE[d[CFCFEJEICF_A@ B?ALIGIHJ@ BCK@ NA= H?A@ CFN B_A@ CF?JCFNA\FZJ@ B[CKHB}ZEJEALJL[BNA@ ZNALN GlNAMcJ_ACF_ALCFN sovelluksen moduulit voidaan kääntää eri aikoina prosessien sijainti voi vaihtua suoritusaikana käskykanta voi sallia osoitustapoja,?a@n_a@[b[@ CFEICF?AMcJE " joissa osoite lasketaan suoritusaikana _ALNA@ ZNA@ L?ALI= NA@ = = @ B[HJHBCFNA\FZJ@ BCKHB _[B[@ CFCFNA@ L#!! BqBN NI_[B[@ CFCFNA@ L BqBN KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-9 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-10 w w 99 ) 9!~ 4!4 9!~ ) ) 99 56 99 <>MJCF?A@ B[ZE[dCKCF h NA= = @ CFCFNOnN}d[MCF?A@ B?ALIZ_J_JcA@ LcJNJCFNALIZE[d[CFCF suojauksista tinkimättä! _J_JcA@?A@JGIHJHCKH}B[H_A\F@ CKHJZB?ALIZJHJ= H?OBqBN vapaakäyntisyys (reentrancy) järkevämpää sallia koodin yhteiskäyttö kuin pitää muistissa useita kopioita _AL?AC,^J\Y_[B?[BB[@ C CF?AZ?OnEJC d[mcf?a@ BC dacfe GIHJ@ cj?al ZNALBBNAƒ1 _JCF?ALILJ@ @ = = E}d[MCF?A@ B[@ EICK@?JCF_*\YNAZ?ALCF?A@ CFN Esim. tuottajalla ja kuluttaja yhteinen puskuri ZE[d[CFE}BEA@ Z?A@ CFEAƒJ^NA= n?a= HJ^[dqd[LCFŒ E &'()*),+.-/' 01-/2 ) 2 4!56' ) 77 r& 8 7y&t%$ u {7yty w x7 8"u 7yz%{ss 7y u { KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-11 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-12 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-2

a r r 9!~ 56 99 ) 9!~ 4!4 9!~ ) p \Y_[B?[BB[@JZ_AZ_ALNJNALIGIHJ@ BCK@ @ L[=?[nqd[= =? _[B._AM1?A= GlN. YdqdB[@ B?ALIGIHJ@ B[CK@ LIZ_AZ_Aƒ B[@ CFEI?A@nEA= CFCFEAGlEACFCFE ^dbc dcfeb[h_a\f@ CKCFNAGlNJNAL?AL?ACF?A= GlEJC a) kiinteä partitiointi b) dynaaminen partitiointi c) Buddy System d) yksinkertainen segmentointi e) yksinkertainen sivutus NJC B_ LBJZNJCF_JN[nN ZNAL[BNALJ^?A\F@ LJL? ei paljon käyttöä nykyisissä järjestelmissä kuuluu kuitenkin KJ:n peruskäsitteistöön &'()*),+.-/' 01-/2 ) 2 4!56' ) 77 #& 9!9!~ ) 2') 0J) 9 ) 9 Ž) KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-1 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-14 && 9!9!~ ) 2 ' ) "0J) 99 )) 99 Ž )!" # $ % % & ' #! ( " )" &*& #)% % +,#- %./ % " ' #! ". & % ) 0-1 " && 9!9!~ ) 2 ' ) "0J) 99 )) 99 Ž ) _[B.?A@A\F@ @ CFCFE[nEAL}B[HJHJ\YCFNnNA^NJNJCFN ^NA\YCK@ CK@ _JCFNAƒ CF?AZJ@JCK@ = NJN M?A@ CFCF_[nNA@ McJ_A= = N joku prosessi levylle PCB jäi muistiin _[B._AM1?A= GlN LJ@ @ LI@ B_Aƒ?JCFCF?A@B_A^J@ LJHJC,GI@ MJ@ LJZEJEAL ^NA\FCK@ CK@ _J_ALJƒJ^J@ CK@_AM1?A= Gl_A@ NALI\YNACKZNA@ BCFN CK@ = NALJL? kerrostus (overlaying) 2 ohjelmoijan hoitama segmentointi vain osa ohjelmasta muistissa piti koodata mitä osia (aliohjelmia, segmenttejä ) kullakin hetkellä muistissa ja missä kohdassa KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-15 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-16 46557 8:9<;=86>=?A@*8B58B5"C=8 46557 8:9<;=86>=?A@*8B58B5"C=8 `` a 55 bcc<58bd e EGF*H IKJLH MONPRKJLJTS UWV,X NYOJTV,ZY*JTY,M*JT[ varattiin aina kokonainen partitio, vaikka vähempikin olisi riittänyt \]H IKP,H MV,MO^*H _IKJTY,FJLF*UOH MV,M (internal fragmentation) partitioiden sisälle jäi tyhjää tilaa vapaa tila yhdessä olisi saattanut riittää uudelle prosessille, mutta se ei ollut yhtenäisellä alueella f*yign[,h N*N*H*^[h_iJLH JLH Y*J]IK[,UW[,M*NY,NY,H IH [ jos vapaita, valitse joku niistä jos kaikki varattuja, heittovaihda joku Blockedprosessi levylle j tilaa vapautuu aina saman verran f*yig^[h_ijlh JLH Y*J:Vh_TH*NY,NY,H IH [ valitse pienin partitio, johon prosessi sopii j yritti minimoida sisäistä pirstoutumista a) erikokoisille partitioille omat prosessijononsa j partitiokoko yksi työn parametreista b) yksi jono, josta valittiin johonkin vapaaseen partitioon KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-17 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-18 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5 -

a aa 46557 8:9<;=86>=?A@*8B58B5"C=8 `` a 55 bcc<58bd e 44 ; 8h8 bc;<@bc9=e 8:9 ;=8 7=?<? 57=9A7 >?<@*8B58B5"C<57=8B5 F K[ KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-19 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-20 7=?<? 57=9A7 >=?A@*8B58B5"C<57 8B5 hhv*jlf*np*jtv*v,mo^[h_ijlh JLH Y,H MJLH [ ][h_i[,fkikjtv,mony*y*j[ X F*N*F*UWP*Ph_iP K[,H ZJTV,X H K[*J RM[*[,UOH IKVIKJLH*^*_iY IKVI IH V,MOJT[,_T^V,H V,MOUOF*N[*[,M h_iyikv I IH X X V UOF*H IKJLH [ K[,H M IKV,M KVh_T_i[,MON*F*H M JT[h_ H JIH X NY,H MV,MO^*H _IKJTY,FJLF*UOH MV,M (external fragmentation) varausten / vapautusten tuloksena väleihin jäi pieniä vapaita alueita fojlh H H IKJLH*UOF*H IJLH [ KP,X H X X P (compaction) prosesseja siirreltiin, jotta vapaa tila yhteen kohtaan yleisrasite 7=?<? 57=9A7 >=?A@*8B58B5"C<57 8B5! "$#&% '&(&(&)*)*#,+ -&./(&%&(&0&1&12 % 4 #&#,5&6 7&)*(&)8)*% 4 4 (9;:/<&7&<&7,=?>! @A7&),<&#&% <&<*%/B,5&6 7&)*(&)*)8% #C 7&EF2 E&%GA#F2H4 7&I&<&(&-*J 2 % 4 #&#&0&: K @L7F2 2 %&E&E&-&(&0?MA9AN 0,)*E&7&6 % 2 (F2 2 #FGA#&<&)8% Kuva 7.4 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-21 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-22 7=?<? 57=9A7 >=?A@*8B58B5"C<57 8B5! O$% % 0&5&1 K @L'&(*% 2 2 %&M/P&N 0,E&4 7&) + (&.FC #,MA9L)*#*%&)*(&0?5&#*% <&#&0?+.! R% <&#&0&#&#&0?M/P,5&1&1&)*%F2 #&#&),S(&#&-FTUJ 2 % 4 #&#&0! K E&0V,E*% )W2 % )*)*#?(*%/S(&#&-FTUJ 5&6 7&)*(&)*)*( C #&: K @ GA#&% 'F2 7*%/M/P*N 0?V,E&% )W2 % % 0 X Y E&4 7&<&)*(&0&#,B?5*% 6 )W2 #*4 (F2 2 #&N&Z/>\[ Z/>\[9]>_^`F9A> 55 bcc<58bd e Kuva 7.5 a?b c&d egfhi]d jjlkajm j]d jj/no p q j]kahb d d rrnjlkaeieb nr/n d b b kab c&d esgb c&d jm kar put rvc&d w x b d fhhy d jj/n cahzb k]b n pu{ b m c/d w x b d rn]ca fhhy d jj/n m b b d d e]kaenlca}}m b pu~ r]d w x b d j]d fjgr]d cab n]d ee rry y b car]c&d e fhij]c&d j KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-2 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-24 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-4

A?<@,?=e e 5 bcc<58bd e=? C<@h58 55 AC<5e 8:C? <C<@h58 55 *H _IKJ /H J yksinkertainen helpoin toteuttaa tehokkaasti (paras) isosta aukosta jää jäljelle isohko aukko hv IKJ /H J hyvä nimi, mutta tuloksena mahd. pieniä aukkoja tuloksena nopeimmin pirstoutuminen BV *J /H J varaukset / aukot muistin loppuosaan 0Y*JTV,FJLFI*X H M*N*H JTV*JTJ/RgX H IKJT[]Y I IK[ K[,^[*[*J:[,X FV*V,J NY*Y,MWJT[,HY IKY,H JTJTV*V,MOUOF*N[,H IKV I IK[ P,_ V IKJRNKIKV I IKP kumpi parempi? (osoite,pituus) (osoite,pituus) F*MOUOF*H IJLH I IK[ K[,H M :X Y,NV ^*_iyikv I IKVv[ N[,M*M[*JLJLHY*JTJT[*[ F*FKIH*^,_iYIKVIIHKIFY,_TH JLF*NIKV*V,M ettei CPU jouten heittovaihda joku levylle poistettava prosessi Blocked-Suspend-tilaan uusi prosessi tilaan Ready-Suspend tai Ready EGH NP ^Y,H I]Y*JTJT[gIK[*[,JLH H M IKY,^*H K[ IKJLH K[,^[*[*JT[ iso vs. pieni sellainen, jonka vieressä iso tyhjä alue pieni vs. suuri prioriteetti KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-25 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-26 44 ; 8h8 bc;<@bc9=e 8:9 ;=8 d a e 8:9 d aa e 8:9 Y,UO^*_iY,UOH I IH*N[,Z VIKJT[OV,U *UWV,MV,JTV,X UWPIKJTP kiinteät partitiokoot, mutta dynaaminen jako partitioihin ei haluta jättää pieniä tyhjiä tiloja varaa pikkuisen enemmänkin kuin tarve vaatii ][h_i[,fki RNKIH NS,MONY,NY H X UW[,H IKJT[ H I IK[ M ^Y*JTV,MI IH I IK[ suurin mahdollinen yleensä koko muisti pienimmälle varausyksikölle joku minimikoko yksinkertaistaa vapaiden alueiden kirjanpitoa "!$#%!&')()*+-,.!0/)!12! 4*56!7 &2* 4*508924 ()+:*7 8 +:;+:*&2+:*+:+:!-/ (<()!+:*92;''2!!()+= KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-27 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-28 >@?AACBEFBCGHJIK >@?AACBEFBCGHJIKSR IGTUKVIW$XXT LNM087 7 O1 +:OO'&)()+:!' 5'2;;(+:!;P6!!7 ()+:!! lista osoitteiden mukaisessa järjestyksessä aluksi vain yksi suuri varausyksikkö "!$#%!&)( jos oikean kokoluokan listassa ei vapaata alkiota, jaa luokkaa suurempi alue kahdeksi pienemmäksi toista tarvittaessa "!12!&+=&)( kun listassa kaksi fyysisesti vierekkäistä aluetta, yhdistä ne kokoluokkaa suuremmaksi alueeksi toista tarvittaessa YUZUZ Kuva 7.6 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-29 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-0 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-5

>@?AACB R R W W?XGIH?? GT HJIK?? G 9,.*7 P6!(2()!7 ;; ()*+J;(); +:+:**+ kaikki suhteellisia sen alun suhteen (+:;#:!!+:!!,.!%LNM 56;()!$P&&2+=+=7 ;; ()*+J;(); +:+:**+ 8<82( ( ')(2;(); +:+:* ')(()!P6!7 7!'&57!+:!( ;9,.*7 P6!'2;;4 5P& (+= 5 "8'8)! '2! ;(); +:*P&&552;( /)!(+:!'2O(')8,.O (&2;#: +:*+=+:!*(<()! LNM 5 8)4 50/);'2O8)+:+:OO 828<( ( O;-(); +:+:* +:!,.;+:*5'&5 "!$# (&2;#: +:+:!!LNM +:O ;(); +:*P&&552;()+:!*2+:!$# / + ()*+:*924O KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-1 KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-2 GT HJIK?? G Kuva 7.8 %% TT H$HJIT GH&HN?XT '(')#* 9&5P&&552;()+:!,.!0(&2;,.!&()+:!#:' ()+=&)()+:! /)!$#%+:*5'2!')(#%*' ()+:*#: O ns. kanta- ja rajarekisteri Base prosessin fyysinen alkuosoite Limit prosessin loppuosoite (tai pituus) L &51#%;-()*(<()(&2;$#: +=&')()**5'2;1 ; 4!!552O 7 7 *!#./);+"!"+& (+:O Fyys.osoite = loog.osoite + Base jos fyysinen osoite > Limit aiheuta poikkeus virh. muistiosoite muuten MAR <-- fyysinen osoite KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5 - KJ-I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-4 KJ-I I S2004 / Tiina Niklander; kalvot Auvo Häkkinen 5-6