Rozdiel medzi pamäťou cache a virtuálnou pamäťou

Pamäť vyrovnávacej pamäte verzus virtuálna pamäť
 

Rozdiel medzi vyrovnávacou pamäťou a virtuálnou pamäťou existuje v účele, pre ktorý sú tieto dve použité, a vo fyzickej existencii. Pamäť cache je typ pamäte používanej na zlepšenie času prístupu k hlavnej pamäti. Nachádza sa medzi CPU a hlavnou pamäťou a môže existovať niekoľko úrovní vyrovnávacej pamäte, ako napríklad L1, L2 a L3. Typ hardvéru používaného pre vyrovnávaciu pamäť je oveľa nákladnejší ako RAM (pamäť s náhodným prístupom) používanú pre hlavnú pamäť, pretože vyrovnávacia pamäť je oveľa rýchlejšia. Z tohto dôvodu je kapacita vyrovnávacej pamäte veľmi nízka. Virtuálna pamäť je technika správy pamäte, ktorá sa používa na efektívne využitie pamäte RAM (hlavná pamäť), pričom pre každý program poskytuje samostatný pamäťový priestor, ktorý je dokonca väčší ako skutočná kapacita fyzickej pamäte RAM (hlavná pamäť). Tu sa pevný disk používa na rozšírenie pamäte. Položky vo fyzickej pamäti RAM sa prenášajú tam a späť s pevným diskom.

Čo je pamäť cache?

Pamäť cache je typ pamäte ktorý leží medzi CPU (centrálna procesorová jednotka) a RAM (pamäť s náhodným prístupom). Účelom vyrovnávacej pamäte je skrátiť čas prístupu CPU k pamäti RAM. Pamäť cache je omnoho rýchlejšia ako RAM. Takže prístupový čas v pamäti cache je oveľa kratší ako prístupový čas v pamäti RAM. Ale náklady na pamäť používanú pre vyrovnávaciu pamäť sú oveľa vyššie ako náklady na pamäť používanú pre RAM, a preto je kapacita vyrovnávacej pamäte veľmi nízka. Typ pamäte používanej pre vyrovnávaciu pamäť sa nazýva SRAM (Static Random Access Memory)..

Vždy, keď CPU chce získať prístup k pamäti, najprv skontroluje, či to, čo potrebuje, je uložené v pamäti cache. Ak áno, bude k nej mať prístup s najmenšou latenciou. Ak sa nenachádza v pamäti cache, požadovaný obsah sa skopíruje z pamäte RAM do pamäte cache a potom z pamäte cache bude mať prístup iba procesor. Pri kopírovaní obsahu z vyrovnávacej pamäte sa do vyrovnávacej pamäte kopíruje nielen obsah v požadovanej adrese pamäte, ale aj blízky obsah. Takže nabudúce existuje vysoká pravdepodobnosť, že dôjde k zásahu do vyrovnávacej pamäte, pretože väčšina počítačových programov najčastejšie pristupuje k údajom v okolí alebo k naposledy získaným údajom. Priemerná latencia pamäte sa teda vďaka vyrovnávacej pamäti zníži.

V CPU existujú tri typy vyrovnávacej pamäte: Vyrovnávacia pamäť na uloženie inštrukcií programu, Dátová vyrovnávacia pamäť na ukladanie dátových položiek a Vyrovnávacia vyrovnávacia pamäť na ukladanie mapovaní pamäte. Pre dátovú vyrovnávaciu pamäť existujú spravidla viacúrovňové cache. To znamená, že existuje niekoľko vyrovnávacích pamätí ako L1, L2 a L3. L1 cache je najrýchlejšia, ale najmenšia vyrovnávacia pamäť, ktorá je najbližšie k CPU. Pamäť cache L2 je pomalšia ako L1, ale väčšia ako L1 a je umiestnená po vyrovnávacej pamäti L1. Vďaka tejto hierarchii je možné dosiahnuť lepšiu priemernú dobu prístupu do pamäte pri nižších nákladoch.

Čo je to Virtuálna pamäť?

Virtuálna pamäť je technika správy pamäte používané v počítačových systémoch. Neexistuje hardvér nazývaný virtuálna pamäť, ale je to koncept, ktorý využíva RAM a pevný disk na poskytovanie virtuálneho adresového priestoru pre programy. Prvá RAM je rozdelená na kúsky nazývané stránky a sú identifikované adresami fyzickej pamäte. Na pevnom disku je vyhradená špeciálna časť, kde sa v systéme Linux nazýva swap a vo Windows sa nazýva stránkový súbor. Pri spustení programu sa získa virtuálny adresový priestor, ktorý môže byť dokonca väčší ako skutočná fyzická pamäť. Priestor pre virtuálnu pamäť je tiež rozdelený na kúsky nazývané stránky a každá z týchto stránok virtuálnej pamäte môže byť mapovaná na fyzickú stránku. Tabuľka nazvaná tabuľka stránok sleduje toto mapovanie. Keď sa vo fyzickej pamäti vyčerpá priestor, urobia sa určité fyzické stránky, ktoré sa na pevný disk presunú do tejto špeciálnej časti. Ak je ktorákoľvek stránka poslaná na pevný disk znova potrebná, prenesie sa na fyzickú pamäť umiestnením inej vybranej stránky z fyzickej pamäte na pevný disk..

Aký je rozdiel medzi pamäťou cache a virtuálnou pamäťou?

• Pamäť vyrovnávacej pamäte je typ pamäte používanej na zlepšenie času prístupu k hlavnej pamäti. Je to rýchlejší typ pamäte, ktorá sa nachádza medzi CPU a RAM, aby sa znížila priemerná latencia prístupu k pamäti. Virtuálna pamäť je metóda správy pamäte, kde je koncept, ktorý umožňuje programom získať vlastný priestor virtuálnej pamäte, ktorý je dokonca väčší ako skutočná dostupná fyzická pamäť RAM..

• Pamäť vyrovnávacej pamäte je typ hardvérovej pamäte, ktorá skutočne existuje fyzicky. Na druhej strane neexistuje hardvér nazývaný virtuálna pamäť, pretože ide o koncept, ktorý využíva RAM, pevný disk, jednotku správy pamäte a softvér na poskytovanie virtuálneho typu pamäte..

• Správa pamäte cache sa vykonáva úplne pomocou hardvéru. Virtuálnu pamäť spravuje operačný systém (softvér).

• Pamäť cache leží medzi RAM a procesorom. Prenosy údajov zahŕňajú RAM, vyrovnávaciu pamäť a procesor. Virtuálna pamäť na druhej strane zahŕňa prenos údajov medzi RAM a pevným diskom.

• Pamäť vyrovnávacej pamäte má malé rozmery, ako sú kilobajty a megabajty. Virtuálna pamäť na druhej strane zahŕňa obrovské veľkosti, ktoré zaberajú gigabajty.

• Virtuálna pamäť zahŕňa dátové štruktúry, ako sú tabuľky stránok, ktoré ukladajú mapovanie medzi fyzickou pamäťou a virtuálnou pamäťou. Ale tento typ dátových štruktúr nie je potrebný pre vyrovnávaciu pamäť.

Zhrnutie:

Pamäť vyrovnávacej pamäte verzus virtuálna pamäť

Pamäť vyrovnávacej pamäte sa používa na zlepšenie času prístupu k hlavnej pamäti, zatiaľ čo virtuálna pamäť je metóda správy pamäte. Pamäť vyrovnávacej pamäte je skutočný hardvér, ale neexistuje hardvér nazývaný virtuálna pamäť. RAM, pevný disk a rôzne ďalšie hardvérové ​​vybavenie spolu s operačným systémom vytvára koncept nazývaný virtuálna pamäť, ktorý každému programu poskytuje veľké a izolované priestory virtuálnej pamäte. Obsah vyrovnávacej pamäte je riadený hardvérom, zatiaľ čo obsah vo virtuálnej pamäti je spravovaný operačným systémom.

Snímky s láskavým dovolením:

  1. Proces vyrovnávacej pamäte cache firmou Hellisp (CC BY-SA 3.0)
  2. Virtuálna pamäť od Ehamberga (CC BY-SA 3.0)