Preslikovanje navideznih naslovov

img152_8
Navidezni pomnilnik je ime za pomnilniško hierarhijo, ki ima kot najvišji nivo Mn pomožni pomnilnik. Danes je pomožni pomnilnik praktično vedno magnetni disk. Število nivojev pri tem ni pomembno. Naslovi, ki jih daje CPE, se nanašajo na najvišji nivo (kakor pri vsaki pomnilniški hierarhiji) in jih zato imenujemo navidezni naslovi (tudi logični naslovi). Podmnožica navideznega pomnilnika je shranjena v glavnem pomnilniku, podmnožica te podmnožice pa v predpomnilniku.

Podobno kot za predpomnilnik, tudi tu rečemo, da je del vsebine navideznega pomnilnika preslikan v glavni pomnilnik. V vsakem trenutku obstaja preslikava, s katero je določena podmnožica navideznega pomnilnika, ki je v glavnem pomnilniku (fizičnem pomnilniku).

Pri vsakem pomnilniškem dostopu je navidezni naslov z uporabo informacije o preslikavi potrebno preslikati v fizični naslov. Pri tem se lahko seveda zgodi, da imamo zgrešitev. Preslikovanje navideznih naslovov v fizične je bistveni del dogajanja na računalnikih z navideznim pomnilnikom.

Preslikovalna funkcija, ki jo vsebuje preslikovalnik, se med delovanjem spreminja - tako, da bi bila verjetnost zadetka čim večja. Preslikovalnik se pri manjših računalnikih označuje kot MMU - Memory Management Unit - enota za upravljanje s pomnilnikom. Bistveno je, da je to preslikovanje kar se da hitro.

Za razliko od predpomnilnikov, je pri navideznem pomnilniku potrebno hardversko realizirati le preslikovanje naslovov, medtem ko se zamenjevalno strategijo realizira programsko - ker je prenos med diskom in glavnim pomnilnikom počasen, je taka rešitev dovolj hitra (in seveda veliko cenejša).

Tudi pri navideznih pomnilnikih je mogoče opredeliti območja, ki se ne preslikujejo in je zato navidezni naslov vedno enak fizičnemu. Razlogi so podobni kot pri predpomnilnikih. Poleg tega vedno obstaja način, ki omogoča, da s programom izklopimo preslikovanje - to je pomembno npr. pri vklopu računalnika, ko preslikovalna funkcija še ni definirana.

Poznamo tri implementacije preslikovanja navideznih naslovov v fizične:

  • ostranjevanje,
  • segmentacija in
  • segmentacija z ostranjevanjem.