Rozdíl mezi vyrovnávací pamětí a virtuální pamětí

Paměť mezipaměti vs virtuální paměť
 

Rozdíl mezi vyrovnávací pamětí a virtuální pamětí existuje v účelu, pro který jsou tyto dvě použity, a ve fyzické existenci. Paměť mezipaměti je typ paměti používané ke zlepšení doby přístupu k hlavní paměti. Je umístěna mezi CPU a hlavní pamětí a může existovat několik úrovní mezipaměti, například L1, L2 a L3. Typ hardwaru používaného pro mezipaměť je mnohem nákladnější než RAM (paměť s náhodným přístupem) používaná pro hlavní paměť, protože mezipaměť je mnohem rychlejší. Z tohoto důvodu je kapacita vyrovnávací paměti velmi malá. Virtuální paměť je technika správy paměti, která se používá k efektivnímu využití paměti RAM (hlavní paměť) a zároveň poskytuje samostatný paměťový prostor pro každý program, který je dokonce větší než skutečná kapacita fyzické paměti RAM (hlavní paměť). Zde se pevný disk používá k rozšíření paměti. Položky ve fyzické paměti RAM jsou přenášeny tam a zpět s pevným diskem.

Co je paměť cache?

Paměť cache je typ paměti který leží mezi CPU (centrální procesorovou jednotkou) a RAM (paměť s náhodným přístupem). Účelem mezipaměti je zkrácení doby přístupu CPU do paměti RAM. Paměť cache je mnohem rychlejší než RAM. Takže přístupový čas v mezipaměti je mnohem kratší než přístupový čas v RAM. Ale náklady na paměť používanou pro vyrovnávací paměť jsou mnohem vyšší než náklady na paměť používanou pro RAM, a proto je kapacita vyrovnávací paměti velmi malá. Typ paměti používané pro vyrovnávací paměť se nazývá SRAM (Static Random Access Memory).

Kdykoli CPU chce získat přístup k paměti, nejprve zkontroluje, zda to, co potřebuje, je uloženo v mezipaměti. Pokud ano, bude k ní mít přístup s minimální latencí. Pokud není uložen v mezipaměti, bude požadovaný obsah zkopírován z paměti RAM do mezipaměti a pak z ní bude mít přístup pouze procesor. Při kopírování obsahu z mezipaměti se do mezipaměti zkopíruje nejen obsah v požadované paměťové adrese, ale také blízký obsah. Takže příště je vysoká pravděpodobnost, že dojde k zásahu do mezipaměti, protože většina počítačových programů přistupuje k datům v okolí nebo k posledně přístupným datům nejčastěji. Díky mezipaměti je tedy snížena průměrná latence paměti.

V CPU existují tři typy mezipaměti: Instrukční mezipaměť k uložení instrukcí programu, Datová mezipaměť ukládat datové položky a Překladová vyrovnávací paměť ukládat mapování paměti. Pro datovou mezipaměť obecně existují víceúrovňové mezipaměti. To znamená, že existuje několik mezipamětí jako L1, L2 a L3. Mezipaměť L1 je nejrychlejší, ale nejmenší mezipaměť, která je nejblíže CPU. Mezipaměť L2 je pomalejší než L1, ale větší než L1 a je umístěna po mezipaměti L1. Díky této hierarchii lze dosáhnout lepší průměrné doby přístupu do paměti za nižší cenu.

Co je virtuální paměť?

Virtuální paměť je technika správy paměti používané v počítačových systémech. Neexistuje žádný hardware nazývaný virtuální paměť, ale je to koncept, který využívá RAM a pevný disk k poskytování virtuálního adresového prostoru pro programy. První RAM je rozdělena na kousky nazývané stránky a jsou identifikovány adresami fyzické paměti. Na pevném disku je vyhrazena zvláštní část, kde se v Linuxu nazývá swap a ve Windows se nazývá stránkovací soubor. Při spuštění programu je přidělen virtuální adresový prostor, který může být dokonce větší než skutečná fyzická paměť. Prostor virtuální paměti je také rozdělen na kousky nazývané stránky a každá z těchto stránek virtuální paměti může být mapována na fyzickou stránku. Tabulka nazvaná tabulka stránek sleduje toto mapování. Když se ve fyzické paměti vyčerpá místo, udělá se to, že určité fyzické stránky jsou na tuto zvláštní část pevného disku posunuty. Pokud je znovu potřeba jakákoli stránka zasunutá na pevný disk, je přenesena na fyzickou paměť vložením další vybrané stránky z fyzické paměti na pevný disk..

Jaký je rozdíl mezi mezipamětí a virtuální pamětí?

• Paměť mezipaměti je typ paměti používané ke zlepšení doby přístupu k hlavní paměti. Jedná se o rychlejší typ paměti, který se nachází mezi CPU a RAM, aby se snížila průměrná latence přístupu k paměti. Virtuální paměť je metoda správy paměti, kde se jedná o koncept, který umožňuje programům získat svůj vlastní prostor virtuální paměti, který je dokonce větší než skutečná dostupná fyzická RAM..

• Paměť cache je typ hardwarové paměti, která ve skutečnosti existuje fyzicky. Na druhé straně neexistuje žádný hardware nazývaný virtuální paměť, protože se jedná o koncept, který využívá RAM, pevný disk, jednotku správy paměti a software k poskytování virtuálního typu paměti.

• Správa paměti cache se provádí plně pomocí hardwaru. Virtuální paměť je spravována operačním systémem (software).

• Paměť mezipaměti leží mezi RAM a procesorem. Přenosy dat zahrnují RAM, vyrovnávací paměť a procesor. Virtuální paměť na druhé straně zahrnuje přenos dat mezi RAM a pevným diskem.

• Paměti mezipaměti mají malé velikosti, například kilobytes a megabajty. Virtuální paměť na druhé straně zahrnuje obrovské velikosti, které zabírají gigabajty.

• Virtuální paměť zahrnuje datové struktury, jako jsou tabulky stránek, které ukládají mapování mezi fyzickou pamětí a virtuální pamětí. Ale tento typ datových struktur není pro mezipaměť nutný.

Souhrn:

Paměť mezipaměti vs virtuální paměť

Paměť mezipaměti se používá ke zlepšení doby přístupu k hlavní paměti, zatímco virtuální paměť je metoda správy paměti. Paměť cache je skutečný hardware, ale neexistuje žádný hardware nazývaný virtuální paměť. RAM, pevný disk a různé další hardware společně s operačním systémem vytváří koncept zvaný virtuální paměť, který každému programu poskytuje velké a izolované prostory virtuální paměti. Obsah v paměti cache je spravován hardwarem, zatímco obsah ve virtuální paměti je spravován operačním systémem.

Obrázky se svolením:

  1. Proces paměti cache od Hellisp (CC BY-SA 3.0)
  2. Virtuální paměť od Ehamberga (CC BY-SA 3.0)