Řídicí jednotka paměti

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é 23. ledna 2019; kontroly vyžadují 5 úprav .

Jednotka správy paměti nebo jednotka správy paměti ( MMU) je počítačová hardwarová komponenta zodpovědná  za správu přístupu do paměti požadované centrální procesorovou jednotkou .

Jeho funkcemi jsou překlad adres virtuální paměti na adresy fyzické paměti (tj. správa virtuální paměti ), ochrana paměti , správa mezipaměti , arbitráž sběrnice a u jednodušších počítačových architektur (zejména těch s malou šířkou adresové sběrnice) přepínání paměťových bloků. Někdy se také nazývá jednotka pro správu stránkované paměti ( PMMU) . 

Nyní je nejčastěji zmiňován v souvislosti s organizací virtuální paměti, a je proto kritický pro mnoho moderních víceúlohových operačních systémů , včetně všech moderních Windows NT a mnoha UNIXových . Speciální edice linuxového jádra , μClinux , může běžet bez MMU.

Jednotka správy paměti je nyní velmi často součástí centrální procesorové jednotky nebo počítačové čipové sady .

Principy činnosti

Princip fungování moderních MMU je založen na rozdělení virtuálního adresového prostoru (jednorozměrné pole adres používaných centrálním procesorem) na části o stejných, zpravidla několika kilobajtech , i když možná mnohem větších, rovných mocnina 2, nazývaná stránky . Spodních n bitů adresy (offset v rámci stránky) zůstává nezměněn. Horní bity adresy představují (virtuální) číslo stránky. MMU obvykle převádí virtuální čísla stránek na čísla fyzických stránek pomocí Translation Lookaside Buffer ( TLB ) . 

Pokud překlad TLB není možný, je vyvolán pomalejší mechanismus překladu na základě specifických hardwarových nebo softwarových systémových struktur. Data v těchto strukturách se obvykle nazývají položky tabulky stránek  ( PTE) a samotné struktury se nazývají tabulky stránek ( PT ) . Zřetězení fyzického čísla stránky s offsetem v rámci stránky dává fyzickou adresu.  

Prvky PTE nebo TLB mohou obsahovat i další informace: bit znaku zápisu na stránku ( eng.  dirty bit ), čas posledního přístupu na stránku ( eng.  accessed bit , pro implementaci algoritmu nahrazení stránky , naposledy použitý ( eng.  nejméně recent used, LRU ), které procesy ( user ( eng.  user mode ) nebo system ( eng.  Supervisor mode )) mohou číst nebo zapisovat data na stránku, zda je nutné ukládat do mezipaměti strana.

Viz také