Ostranjevanje

img153_8
Preslikovanje navideznih naslovov v fizične pri ostranjevanju
Najstarejši med načini za realizacijo navideznega pomnilnika. Pomožni pomnilnik je razdeljen na bloke enake velikosti, ki jim pravimo strani. Glavni pomnilnik je razdeljen na enako velike bloke, ki jim pravimo okviri strani. Vsako stran navideznega pomnilnika je mogoče prenesti v poljubnega od okvirjev strani. Velikosti strani se gibljejo od 512 do 4096 pomnilniških besed.

Preslikovalna funkcija je opredeljena preko tabele strani. Vsaki strani navideznega pomnilnika pripada v tej tabeli eno polje. Ker je število strani fiksno (pri znani velikosti glavnega in pomožnega pomnilnika), je fiksna tudi velikost tabele strani (lahko jih je tudi več).

Slaba stran ostranjevanja je notranja fragmentacija - zadnje izmed strani, ki jih programi zasedajo, so v povprečju zasedene le polovično. Vsak navidezni naslov je sestavljen iz dveh delov - številke strani in naslova besede znotraj strani. Številka strani se pri preslikovanju preslika v številko okvira strani, drugi del pa se ne preslikuje.

Polje v tabeli strani imenujemo tudi deskriptor strani - ta vsebuje:

  • bit veljavnosti (V) - stran je praviloma neveljavna samo ob prve dostopu,
  • bit prisotnosti (zadetka) (P)- kadar je ta enak 1, se stran nahaja v enem od okvirjev glavnega pomnilnika,
  • zaščitni ključ (RWX)- sestavlja ga več bitov, ki povedo, kakšna vrsta dostopov je dovoljena in kdo ima dostop,
  • bit spremembe (C) - če pride med izvajanjem programa do pisanja v kateregakoli od naslovov te strani se postavi C na 1,
  • številka okvira - kje (v katerem okvirju strani) se v glavnem pomnilniku stran nahaja.

Obstaja nevarnost premetavanja - zaradi velikega števila zgrešitev uporabniški programi stojijo, ker se vrši prenos strani med pomožnim in glavnim pomnilnikom.