Razlika med pomnilnikom predpomnilnika in navideznim pomnilnikom

Cache Memory vs Virtual Memory
 

Razlika med pomnilnikom predpomnilnika in virtualnim pomnilnikom obstaja v namenu uporabe teh dveh in v fizičnem obstoju. Predpomnilnik je vrsta pomnilnika, ki se uporablja za izboljšanje časa dostopa glavnega pomnilnika. Nahaja se med CPU-jem in glavnim pomnilnikom in lahko je več ravni predpomnilnikov, kot so L1, L2 in L3. Vrsta strojne opreme, ki se uporablja za pomnilnik predpomnilnika, je veliko dražja od RAM-a (Random Access Memory), ki se uporablja za glavni pomnilnik, ker je pomnilnik predpomnilnika veliko hitrejši. Zaradi tega je zmogljivost predpomnilnika zelo majhna. Navidezni pomnilnik je tehnika upravljanja pomnilnika, ki se uporablja za učinkovito uporabo RAM-a (glavni pomnilnik), hkrati pa zagotavlja ločen pomnilniški prostor za vsak program, ki je še večji od dejanske zmogljivosti fizičnega pomnilnika (glavni pomnilnik). Tu se trdi disk uporablja za razširitev pomnilnika. Elementi v fizičnem pomnilniku se s trdega diska prenašajo naprej in nazaj.

Kaj je predpomnilnik?

Pomnilnik predpomnilnika je vrsta pomnilnika ki leži med CPU (centralna procesna enota) in RAM (spomin naključnega dostopa). Namen predpomnilnika je zmanjšati čas dostopa do pomnilnika CPU iz RAM-a. Pomnilnik predpomnilnika je veliko hitrejši kot RAM. Torej je čas dostopa do predpomnilnika veliko krajši od časa dostopa v RAM-u. Toda stroški pomnilnika, ki se uporablja za predpomnilnik, so veliko višji od stroškov pomnilnika, ki se uporablja za RAM, in zato je zmogljivost predpomnilnika zelo majhna. Vrsta pomnilnika, ki se uporablja za pomnilnik predpomnilnika, se imenuje SRAM (Static Memory Random Access Memory).

Kadarkoli CPU želi dostopati do pomnilnika, najprej preveri, ali tisto, kar potrebuje, prebiva v predpomnilniku. Če je odgovor pritrdilen, bi do njega lahko dostopali z najmanj zamude. Če ne prebiva v predpomnilniku, bi bila zahtevana vsebina kopirana iz RAM-a v predpomnilnik, nato pa bo iz predpomnilnika dostopal le CPU. Tu se pri kopiranju vsebine iz predpomnilnika v predpomnilnik kopira ne le vsebina želenega pomnilniškega naslova, ampak tudi bližnja vsebina. Naslednjič obstaja velika verjetnost, da se bo zgodil zadetek predpomnilnika, ko večina računalniških programov dostopa do bližnjih podatkov ali do večinokrat dostopa do podatkov. Tako se zaradi predpomnilnika povprečna latenca pomnilnika zmanjša.

V CPU obstajajo tri vrste predpomnilnikov: Predpomnilnik navodil shranite programska navodila, Predpomnilnik podatkov shranjevanje podatkovnih elementov in Prevajalni obrazec za stranski prevod za shranjevanje pomnilniških map. Za predpomnilnik podatkov na splošno obstajajo predpomnilniki na več ravneh. Se pravi, obstaja več predpomnilnikov kot L1, L2 in L3. Predpomnilnik L1 je najhitrejši, vendar najmanjši pomnilnik predpomnilnika, ki je najbližje CPU-ju. Predpomnilnik L2 je počasnejši od L1, vendar večji od L1 in stoji po predpomnilniku L1. Zaradi te hierarhije je mogoče z manj stroški doseči boljši povprečni čas dostopa do pomnilnika.

Kaj je virtualni spomin?

Navidezni pomnilnik je tehnika upravljanja spomina uporablja se v računalniških sistemih. Ni strojne opreme, imenovane navidezni pomnilnik, vendar gre za koncept, ki uporablja RAM in trdi disk za zagotavljanje navideznega naslovnega prostora za programe. Prvi pomnilnik RAM-a je razdeljen na koščke, ki se imenujejo strani, in jih prepoznamo po naslovih fizičnega pomnilnika. Na trdem disku je rezerviran poseben del, kjer se v Linuxu imenuje swap, v operacijskem sistemu Windows pa se imenuje datoteko strani. Ko se program zažene, mu je dodeljen prostor za navidezni naslov, ki je lahko še večji od dejanskega fizičnega pomnilnika. Prostor navideznega pomnilnika je razdeljen tudi na koščke, ki se imenujejo strani, in vsako od teh strani navideznega pomnilnika je mogoče preslikati na fizično stran. Tabela, imenovana tabela strani, spremlja to preslikavo. Ko fizičnemu pomnilniku zmanjka prostora, se določene fizične strani potisnejo na ta posebni del trdega diska. Ko je katera koli stran, potisnjena na trdi disk, spet potrebna, se pripelje v fizični pomnilnik tako, da na trdi disk položi drugo izbrano stran iz fizičnega pomnilnika..

Kakšna je razlika med predpomnilnikom in virtualnim pomnilnikom?

• Pomnilnik predpomnilnika je vrsta pomnilnika, ki se uporablja za izboljšanje časa dostopa do glavnega pomnilnika. Hitrejša vrsta pomnilnika je med CPU-jem in RAM-om, da zmanjša povprečno zakasnitev dostopa do pomnilnika. Navidezni pomnilnik je metoda upravljanja pomnilnika, kjer koncept omogoča programom, da dobijo svoj virtualni pomnilniški prostor, ki je še večji od realnega fizičnega RAM-a, ki je na voljo.

• Pomnilnik predpomnilnika je vrsta strojne pomnilnika, ki dejansko fizično obstaja. Po drugi strani pa ni strojne opreme, imenovane virtualni pomnilnik, saj gre za koncept, ki uporablja RAM, trdi disk, enoto za upravljanje pomnilnika in programsko opremo za zagotavljanje virtualne vrste pomnilnika.

• Upravljanje pomnilnika predpomnilnika v celoti izvaja strojna oprema. Virtualni pomnilnik upravlja operacijski sistem (programska oprema).

• Pomnilnik predpomnilnika leži med RAM-om in procesorjem. Prenosi podatkov vključujejo RAM, pomnilnik predpomnilnika in procesor. Navidezni pomnilnik na drugi strani vključuje prenos podatkov med RAM-om in trdim diskom.

• Pomnilniki predpomnilnika imajo majhne velikosti, kot so Kilobajti in Megabajti. Navidezni pomnilnik na drugi strani vključuje ogromne velikosti, ki sprejmejo gigabajte.

• Virtualni pomnilnik vključuje podatkovne strukture, kot so tabele strani, ki shranjujejo preslikavo med fizičnim pomnilnikom in virtualnim pomnilnikom. Toda ta vrsta podatkovnih struktur ni potrebna za pomnilnik predpomnilnika.

Povzetek:

Cache Memory vs Virtual Memory

Pomnilnik predpomnilnika se uporablja za izboljšanje časa dostopa do glavnega pomnilnika, medtem ko je virtualni pomnilnik način upravljanja pomnilnika. Pomnilnik predpomnilnika je dejanska strojna oprema, vendar ni strojne opreme, imenovane virtualni pomnilnik. RAM, trdi disk in različna druga strojna oprema skupaj z operacijskim sistemom ustvari koncept, imenovan virtualni pomnilnik, ki vsakemu programu nudi velike in izolirane prostore navideznega pomnilnika. Vsebino v pomnilniku predpomnilnika upravlja strojna oprema, medtem ko vsebino v navideznem pomnilniku upravlja operacijski sistem.

Vljudnost slik:

  1. Proces predpomnilnika s strani Hellispa (CC BY-SA 3.0)
  2. Virtualni pomnilnik Ehamberga (CC BY-SA 3.0)