IOMMU

Schematické znázornění funkce různých jednotek správy paměti

IOMMU (zkratka z anglického Input–output memory management unit, doslova vstupně-výstupní jednotka správy paměti) je pomocná jednotka správy paměti propojující operační paměť se vstupně-výstupní sběrnicí podporující přímý přístup do paměti. Podobně jako hlavní jednotka správy paměti mezi procesorem a operační pamětí má na starosti zejména překlad adres, v tomto případě fyzických adres operační paměti a virtuálních adres v zařízení. Typickým příkladem IOMMU je GART, jednotka správy paměti používaná grafickými kartami na sběrnicích AGP a PCI-Express.

Zařízení díky IOMMU může využívat výhod virtuální adresace, tedy:

  • může využít velké spojité virtuální oblasti, i když je z fyzického hlediska operační paměť fragmentovaná
  • může využívat i části operační paměti, které by fyzicky nedokázalo adresovat (například na 32bitové platformě x86 s více než 4GB a podporou Physical Address Extension procesor tuto paměť adresovat může, ale zařízení samo o sobě obvykle ne).

Nevýhodou je nutná režie spojená se správou virtuální adresace.

Odkazy

Reference

V tomto článku byl použit překlad textu z článku Input–output memory management unit na anglické Wikipedii.

Média použitá na této stránce