Překladatelská asociační vyrovnávací paměť

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 30. prosince 2019; kontroly vyžadují 7 úprav .

Vyrovnávací paměť  překladu ( TLB ) je specializovaná mezipaměť CPU používaná k urychlení překladu adresy virtuální paměti na adresu fyzické paměti.

Přehled

TLB používají všechny moderní procesory s podporou stránkování paměti . TLB obsahuje pevnou sadu záznamů (od 8 do 4096) a je asociativní pamětí . Každý záznam obsahuje shodu adresy stránky virtuální paměti s adresou fyzické paměti. Pokud adresa není v TLB, procesor obejde tabulky stránek a uloží výslednou adresu do TLB, což trvá 10 až 60krát déle než získání adresy ze záznamu již uloženého v mezipaměti TLB. Pravděpodobnost nezdaru TLB je nízká, v průměru mezi 0,01 % a 1 %.

Přepínání úloh

Pokud cílová úloha používá během přepínání kontextu jiný kontext paměti (adresář stránek a tabulky stránek) , TLB se vyprázdní, čímž se sníží výkon procesoru při následných přístupech do paměti (vyžaduje načtení položek tabulky stránek do prázdného TLB). Existuje několik strategií, jak se vypořádat s čištěním:

Víceúrovňové TLB

V moderních procesorech lze implementovat několik úrovní TLB s různými rychlostmi a velikostmi. Nejvyšší TLB bude obsahovat malý počet záznamů, ale bude pracovat velmi vysokou rychlostí, až několik cyklů. Následující úrovně jsou pomalejší, ale zároveň více.

Někdy je TLB nejvyšší úrovně rozděleno do 2 vyrovnávacích pamětí, jeden pro stránky obsahující spustitelný kód a jeden pro zpracování dat.

Charakteristika

Typické specifikace pro procesory v roce 2009 [1] :

TLB a velké stránky

Mnoho moderních procesorů podporuje 2 typy stránek, normální a velké ( Huge Page ). Například procesory x86 obvykle pracují se stránkami o velikosti 4 KB, ale umožňují stránky o velikosti 4 MB pomocí PSE . U procesorů x86-64 jsou k dispozici velké stránky o velikosti 2 MB [2] (a 1 GB u některých modelů).

Překladové záznamy pro velké tabulky jsou také uloženy v TLB, ale na některých procesorech se pro ně používá samostatný TLB o 4 až 8 záznamech.

Viz také

Poznámky

  1. John L. Hennessy. Počítačová organizace a design. hardwarové/softwarové rozhraní. 4. vydání  (anglicky) . - Burlington, MA 01803, USA: Morgan Kaufmann Publishers , 2009. - S. 503. - 703 s. — ISBN 978-0-12-374493-7 .
  2. Obrovské stránky – Debian Wiki . Získáno 1. června 2012. Archivováno z originálu 30. dubna 2012.

Odkazy