+,-./. 0213, 45136 7.86 9:;,.<!$#%!'()'!*) =?> 7, 9@.80 A B CDCFEGIHFJ EHFELKMJ NMOGIPFODQ O A RSHDTFUVHFEGIWFJ EGXJ A RSHDTFUVHFEGIWFJ EGXJ5YZP[KMJ NMOGXO\KV]M^_FJ K\GIHFGIGZ]MEC A à^dgihfj KMbCM]\GIcdK\GIC Stallings, Luku 8.1 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-1 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-2 =?>fehg.. gi 7 6 j ii 6 4D. k gg 77 lnmzop qx s +,-./. 0213, 45136 7.86 9:;,. < < +ttuvw<uwu = <xyv{zy y KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-3 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-4 +,, j. 6 > > j 6j}7 >~ehg.8k gg 99 gg A \]]nkm U ODJ K\GXJD DJ HFEHFU DJDbDODJ ELNMJ ƒ GXOPDPFQ J PdN\PFƒIODO\K A B J ƒ YZPDP[KMJ NMOGXJ Q PFbWF^GIPFJ K\HMK\GXJDU J bc[kmj NMO2KMJYZPFJ G~K\HDH bwf \KMJ NMOGXJ Q PMKnK\P vain yksi globaali käänteinen sivutaulu yksi alkio pe fyysinen sivutila, jossa ko. sivutilassa sijaitsevan sivun numeo A DWFbPFJ K\HFQ Q P Fƒ WMK\HMKnKMJ Q Q P[KMJ NMOVˆF FŠ F D U J GIHFE GXJ HD_DHDGICDCFE U J EDbC Dƒ WMK\HdKnKMJ E2KMJ NMO b\]k\hdhmknk\cdœ alkiossa myös posessin numeo (pid) MMU:hun ekistei, jossa suoitettavan posessin pid +,, j. 6 > > j 6j}7 >~ehg.8k gg 99 gg A B CDCFEGIHFJ K\HFE2R/ Ž E J E_DHFb\KMJ GSKMJ NMOGXJ Q PFE EDODUVH/ƒ WFJ GIPF U OGXGIP Dƒ WMK\HMKKMJ EVWMK\WFJ GXGIHDHMK\GIP bcm]lj Q U J KMJ NMODEDODUVHFƒ W YZPLKMJ J ƒigz]muvc etsittävä sisällön peusteella A FGZKMJ EDGIC HFƒ CFbDbCFJ KM^PFbDODEP GIHF^WFGIWFEGIP A B CM]MGIHDGICDCFEVPF DODEP ^P YZPFOGXO\KMGIPFODQ OP samaan hajautusosoitteeseen kuvautuvat alkiot linkitetty toisiinsa A DWMKVKMJ NMODEVGXJ HD_DWDG8HFJDQ J K\GIPMKK\PF PFJ ^HFOGIP[KMJ NMODED DODOGIWMKMbHdKMbHM]\G~]nK käytä hajautinta indeksin laskentaan, etsi kotisolusta KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-5 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-6 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-1
+,, j. 6 > > j 6j}7 >~ehg.8k gg 99 gg l m~op q@ +,, j. 6 > > j 6j}7 >~ehg.8k gg 99 gg e (Täydennetty) A R J NMOGXJ Q PFE bhf^\]mbmk\hfe EDODUVHFƒ W Suoaan taulun indeksi HD_ Ei tavitse tallettaa tauluun HD_ KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-7 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-8 +,-./. 0213, 45136 7.86 9:;,. < < = = 6 : 6j. > > j. > > Kuva 7.11 = wwuv)<uv< KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-9 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-10 = = 6 : 6j. > > j. > > A FHFƒIO\KMJ _DHDWFJ Q GIPDPFE2K\PFUVPFEDQ PFJ EHFE bdodj E2KMJ NMODGXO\KM ]Mb\KMJ bcdg\n\pfj E bhmkmbhfecdcfevhfƒij bwfbwfj KMJ P K\HDTFUVHFEDGIGIH YZC A DWFbPFJ K\HFQ Q P Fƒ WMK\HMKnKMJ Q Q P WFUVP[K\HDTFUVHFEGIGXJ GIPFODQ O Ketoo missä tämän posessin segmentit sijaitsevat A ak\wfj GIHFU ODODEDEWMK K\HDTFUVHFEGXGXJ GIPFODQ ODEVPMNMODQ Q P A 8Ž E bcm]mgigic bdogihfevhd_dhfq Q C A Ž E ƒ HFbDJ K\GIH/ƒIJ KnK\C EM]\G K\HDTFUVHFEDGIGXJ GIPFODQ ODE! ]n]kmj EHFEVWMK\WFJ GIH = = 6 : 6j./. > >. k gg 99 g g # $%(' ) * +-,. /103214 576859572 21: 0 4 /859572;: <=58>3< /1: /1? 4 @@A4 B P=1: segmentti muistissa, alkiossa fyysinen alkuosoite sekä pituus. /103214 576859572 21: 0 4 /859572;C D D @6 @@AD3E? 4 @@A4 F kuten sivutaulussa. /103214 576859572 21: 0 4 /859572;CHG7I85HC D D3@2;@A4 6 @/ 2 kuten sivutaulussa KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-11 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-12 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-2
> > j 6j ee 7 L- -7 > > j 6 j 7 > >.86 7 > >.86 : gg j j 7 D segm.no = loog. osoitteen alkubitit siitymä = loog. osoitteen loppubitit Jos segmentin tiedot ei TLB:ssä tai V=0, nouda TLB:hen segmenttitaulun alkio osoitteesta STR + segm.no Jos P=0, aiheuta segm.puutoskeskeytys Jos siitymä > Length, aiheuta keskeytys vih.muistiosoite fyys. osoite = Base + Siitymä A B ODE bhmkmbhd]\gz]nklbcdkmj GIHFQ G~]M 2K\PFUVP WMK\WFJ GIH GXODQ HDH[NMJ J GIPDGIGIPdN\PFb\KMJDODO_DHFQ Q HDHFE KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-13 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-14 7 > >.86 : gg j j 7 # $%(' ) * + + gg : > > > >.8k A RSHDTFUVHFEGIGXJ GIPFODQ ODEVPFQ bdj WMKnK\P PFQ bdowmk\wfj GIH YZP DJ GXODO\K segmentin kokoa helppo kasvattaa/pienentää dynaamisesti saattaa vaatia segmentin uudelleensijoittamista osoitteen oikeellisuus takistettavissa MMU:ssa A RSHDTFUVHFEGXJ G8H/ƒIJ bwfbwfj KMJ PF K]MEGZ]n]LODQ bwfj K\GIP DJ ƒzk\giwfogxodu J KMGIP Vaaus/vapautus ei niin tehokasta kuin sivuilla Muistin tiivistämistavetta ohjelmoija määittelee segmentit ja käyttöoikeudet käyttötapa kopioitu segmenttitaulun alkioon A RSHDTFUVHFEGIGXJMK\WF DJ N\PLKMOW YZPFODb\K\HFEL]Mb\KMJ bdbc KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-15 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-16 +,-./. 0213, 45136 7.86 9:;,. < < = 6 : 6j. > j. > 13k 7 >fehg. g 7 - > 7.86./.3-hj, =?>fehg./. k ee kk 7 6 : 6j. > > j. > > A /ƒ CDCDG Q PFJ GIGIHFJ K\GIWFGdYZP B FŽ GdYZPFbPMN\PFG U2]\cMK K\HDTFUVHFEDGIGIH YZCLKMJ NMODJ bmkmj WF^HMKnK\P H/ƒ CMK2GIPF P ei ulkoista pistoutumista ei tiivistämistavetta muistia helpompi hallita samankokoisina sivuina A DWFbPFJ K\HFQ Q P Fƒ WMK\HMKnKMJ Q Q P oma segmenttitaulu ja yksi sivutaulu pe segmentti A ƒ GX GIPMK\WFJ EHFELKMJ NMOGIPFODQ O KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-17 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-18 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-3
,, / ' =?>fehg./. k ee kk 7 6 : 6j. > > j. > > Tan01 4-394 =?>fehg./. k ee kk 7 6 : 6j. > > j. > > A WDWDTFJ EHFEVWMK\WFJ GIH YZPFbPFOGXODO E\]\G bwfq UVHDHFEVWdK\PDPFE segmenttinumeo segmentin sivutaulun fyysinen osoite löytyy segmenttitaulun tästä alkiosta sivunumeo sivunumeoa vastaava sivutilan numeo löytyy sivutaulun tästä alkiosta siitymä sivulla viitattu sana näin kaukana sivun alusta A ]\cmk K\HDTFUVHFEGXGXJ GIPFODQ OPKMJ NMOGIPFODQ OP N\WFJ _DPDPFELKMJ NMOGIGIPDP KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-19 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-20 =?>fehg./. k ee kk 7 6 : 6j. > > j. > > # $%(' ) * + ;=<?>A@ BDCAEGFHFHIAI?>?< J K!L'M NO P Q '# $ $%!'%, '!! $% * %($ ' $# ( $! %!'% ) *!,+ - -!. '10 /. %(' %($ ' $# $ '# $ %! (' '$6 2 ',($% ' $$! ' ' 354! # $% %# # - 78/ 9 ' $# $ '# $ %! (' 1! $-'# # ' : oikeudet annettu koko segmenttiin (sen kaikkiin sivuihin) KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-21 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-22 RTSVU BB SXWZY [ \]_^a`b]_c de egf5h5ib] ]_jgc de_igk c i ` c ^l^lm_jgc de_i n ibo e_k jp]_` n_q f ] ^ uuden segmentin (dynaaminen) linkittäminen takoittaa vain uuden alkion lisäämistä segmenttitauluun [ s8e o_jpe_ib^ac ig` n ` ntn c `b]ud t ] ]d5c t5v `bewlw2]_k k ] ]_i x e_c `bmde o_jpe_i ^ac k k eg^l]_w t c ^ydege ^d5c m v v ^l^l]{zb]_c ` `b] ] h hbd5c de5d dm{j v c d^ac dbd] [ } q ^le_c d5`bm5h^a^l~ y]{`bm5h^a^l~ n c `be v f e ^ tn c jpm mwlc ^l^lm mde o_jpe_i ^l^ac ` n_q ^l]_c d5c `d5c kauniisti loogisten kokonaisuuksien mukaan useita eilaisia suojaustasoja =Y S BB UƒWZYA!W C?<{BDCA E YY B B ˆ BDCA@ <HŠ Y S BB U KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-23 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-24 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-4
ˆ BDCA@ <HŠ Y S BB UU [ n d v de ]{z w n de5dbd5cb] y] ]d]_jp] ]{` n n f_c ]_x wlc c ^l^lm md5c c ^lm h5`d5c ` n z c n j v c d5^ac d d] jokaisen posessin sivu / segmenttitaulussa viitteet yhteisen koodin ja datan sisältäviin sivutiloihin / segmentteihin mutta kullakin posessilla omat tilat yksityiselle datalle [ n n f_c i n k ^l] t ] t ]_zb] ]_`bm5h5ib^ac d^lm ei saa muuttua [ s c t5v ^ v dƒe_c zb]_w2]5dƒ^l]_zb] h q ^le_c d5`bmuh^l^l~ mg] y] ^le_k k e_i sivu kokoyksikkö, ei looginen yksikkö käyttöoikeudet vaikea ajata funktiotasolla ˆ BDCA@ <HŠ Y S BB U U C A@ BD> @@ Tan01 4-314 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-25 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-26 C ÄE CC I{BD>A@ I{B @@ W SS ˆˆ BDCA@ <HŠ Y S BB UU [ s8e o_jpe_ib^ n c ib^ac `b] v i c dƒ^l]_zb]h q ^le_c d5`bm5h^a^l~ m ] y] ^le_k k e_i ohjelman jakaminen eipituisiin segmentteihin loogisempaa kuin jakaminen tasapitkiksi sivuiksi esim. yhteiskäyttöön takoitettu data omaksi segmentiksi, yksityinen data omaksi segmentiksi [ q ye_k j n c y]{`be_wl^ n n `bm m_ib^lm ym_k k e haluamastaan segmenttijaosta haluamistaan käyttöoikeuksista [ m m_ib^lm ym{j vbn f n d^l] ]g^lm_k k m{zbe_w v d^le e_k k ] n_q ye_k jp]_igk n n o_c de_^ n d n c ^l^le e_^ segmentti ja siitymä sen sisällä @ @ <H@ <HF?> W F{< 5S ˆˆ E E @@ YY K!L'M NO P M K K 'MM! M MM MM! L'M M MM MM! L'M M # $%$$% MM! ' M M MM KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-27 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-28 (( >?BDC F{B FAŠ{<?C?<{< Gˆ F?>AE @>A@ B *)+ [,h~ n_v ` n ig` n ` n paljonko tilaa vaataan pe posessi? [ - ]_` v z n k c ^ac c ` `b] milloin sivu / segmentti tuodaan muistiin? [ s c n c ^ v d5z n k c ^ac c ` `b] minne posessin sivu / segmentti sijoitetaan? [. n c d^ n z n k c ^ac c ` `b]/ mikä vaaus vapautetaan? globaali/lokaali: joku sivu / joku posessin oma sivu? [ 0c `bm5d5c ^le_k k m{^lm_k k m{` v w d d5c k k ]2143 56 7 8 9494: ˆ BDCHC I I )) C?B > > \E< O'P4> P4A Z%FBABSEP4AEHUPB< A4> < X VBFB> > P Ò V%SB< @ES4@%S4@E< AB< < JUAB<OQP4> < W @E< TB< J Z%ecX VES4VEV/YB= @BA4FBABAB< J Ò V%SB< @ES4@%S4@E< AB< < JUAB<OQPB< TB< J RB= @BA4FBABAB< S4@ET4>?BAB< OQP4> VEPBW P4> C HU< A4A4M AB<OQP4> < W VBA4A4V AB<OQPUAB<X VE< > A4FBF ;< = >? @BABCED AB<OQPBK4AB< < = > LEHIMEN \E< ABME< A4> M/YB< = A4> @EP4> PEHU< A4> V ;VEY4VE< ^EFEJUAB<OQP4> < W @ X FEJ W < A4> V Z%VE< SBSB<BAB< OQP4>FE<%HUPB< A4> < A4A4VEC W MBABJ4MB@EW @%[B< > > <E\E< OQP4]%C JUVEW SB< @BA4ABV \EFBG%HIF%J4> @E< J4> < ks. Taulukko 8.1 at X FEW HI@E<X VBb S4MBMEJ4> M X McX VES4VBV YB= @EA4FBA4AB< JdOQVE< T4> FEW F Ò VEJES4@ESB? A4FEG%HIFEJ4> > FE< TB< J RB= @BA4FBABAB< S4@ET4>?BA4FBG%HUFEJ4> > < > VEPBW P4> C A4FBG%HIFEJ4> < JUVEW SBP4@EAB? X V/YB< > PBP4A ;< = >? @BABCED A4FBG%HIFEJ4> > < KBAB< < = > LEHIMEN _W S4@E< A4> V/YB< = A4> @EP4> PEHU< A4> V HUPB< A4> < JU> < <OQ< A4> M%HU< A4> VE= Ò F ;VEY4VE< ^EFEJ/HUPB< A4> < VEW P4FE< ^BF%J W < A4> V Z%VE< SBSB<BA4FBG%HUFEJ4> < >FE<%HUPB< A4> < A4A4V W MBABJ4MB@EW @%[B< > > <E\BFBGB]%C JUVEW SB< @BABA4V KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-29 KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-30 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-5
C C B B F{<HŠ S S < < SS EE SS Š{<H@ YY [Xc ^le_igzb]_c `b]_k k c d v v d1y] t c w2^ v ] ]_k c j v c d5^ac k c c ^a^yh t m ^ ^ n c d5c c id] [Xc ^lmg^ac e ^ n ] n ip^l]_k k e_^le ^l^l] t ]d5c t5v ^l] v k v v i 0ib^lmde o_jpe_i ^l^ac ^l] v k v v i [Xc `5d5cde o_jpe_ib^ n c ib^acb]_c q e v ^l^l] ]{j v c d5^ac i ^ac c t c d^lm_jgc d5^l]_w t e_^l^l]_x j v ^l^l] d5c t5v ^ v dƒe_c [Xc `5d5c n d n c ^le_j v v i i n d t ]5d^l]g] n ]_c `b]_ib] [Xc ^lm q h~ ^yhm n i, ig`bmuh^l~5d5^lm [Xc ^lm n i, iƒd5c dm_k ^l~_ibm KJ-I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-31 KJ-I I S2004 / Tiina Niklande; kalvot Auvo Häkkinen 8-6