Přejít k obsahu

IOMMU

Referenční příručka k architektuřeFeex

IOMMU překládá a omezuje přístupy k paměti iniciované zařízeními. Její ochrana a chování při průchodu (passthrough) závisí na topologii platformy, firmwaru, operačním systému a konfiguraci ovladače.

Co potřebujete vědět

IOMMU překládá a omezuje přístupy k paměti iniciované zařízeními. Její ochrana a chování při průchodu (passthrough) závisí na topologii platformy, firmwaru, operačním systému a konfiguraci ovladače.

Jak to funguje

Zařízení vydává transakce DMA pomocí adres interpretovaných jednotkou pro překlad I/O. Operační systém nebo hypervizor konfiguruje domény a mapování, která tato požadavky přiřazují k povolené systémové paměti. Praktickou izolaci ovlivňují identity zařízení, sdílené hranice překladu a obsluha přerušení.

Kde je funkce užitečná

Virtuální počítač může získat podporované zařízení prostřednictvím frameworku, který vynucuje jeho izolační skupinu IOMMU. Zařízení sdílející skupinu může být nutné přiřadit společně, protože platforma nemůže vytvořit nezávislou izolaci na požadované hranici.

Jak ověřit podporu a aktivaci

Prověřte popis IOMMU dané platformy a stav zapnutí, skupiny a požadavky na přiřazení zařízení v operačním systému či hypervizoru. U procesorů Intel prozkoumejte VT-d; u procesorů AMD použijte zdokumentované prostředky pro virtualizaci I/O AMD. Ověřte přesné chování resetu a ovladače daného zařízení.

Virtualizované nasazení se skládá z několika vrstev: fyzické kapacity, oprávnění ve firmwaru, aktivního hostitelského hypervizoru, vystavených schopností pro hosta a podpory v hostovaném operačním systému. Zkontrolujte vrstvu, ve které se operace skutečně provádí, včetně vnořené virtualizace, pokud je použita.

Co tato funkce nezajišťuje

Příznak IOMMU nedokazuje, že každé periferní zařízení je nezávisle izolováno nebo že je ochrana aktivní. Samotná ochrana stránkovacích tabulek procesoru neomezuje veškeré DMA zařízení. Nepodporované potlačení topologie může oslabit izolaci a nejedná se o rutinní řešení kompatibility.

Kompatibilita a výkon v praxi

Provádění instrukcí procesorem, překlad paměti hosta a přemapování DMA zařízení jsou samostatné mechanismy. Z jednoho pole virtualizace neodvozujte podporu passthrough ani izolace. Použijte podporovanou diagnostiku hypervizoru a přesné požadavky platformy a zařízení.

Praktický kontrolní seznam pro ověření

  1. Zaznamenejte přesný model procesoru nebo platformy a použité verze aplikace, operačního systému a běhového prostředí. Uchovejte přesné znění chybové zprávy nebo požadavku.
  2. Zkontrolujte dokumentaci výrobce pro daný konkrétní model a poté prověřte skutečně dostupnou kapacitu a stav aktivace v prostředí, kde program běží.
  3. Porovnejte veškeré požadavky vybraného binárního souboru nebo backendu. Podobně pojmenovaná funkce, alias nebo obecné technologické označení nestačí.
  4. Ověřte, že aplikace vybrala zamýšlenou implementaci. Pokud nejsou požadavky splněny, použijte její zdokumentovanou diagnostiku a podporované náhradní řešení.
  5. Provádějte vždy jen jednu podporovanou změnu a zopakujte identickou zátěž. Původní konfiguraci a postup obnovy mějte neustále k dispozici.

Pokud je funkce uvedena, ale software ji nemůže použít

Začněte u přesné komponenty, u níž dochází k selhání. Databáze hardwaru popisuje zaznamenané schopnosti; operační systém nebo hypervizor však může vystavit odlišné efektivní prostředí. Chyba neplatné instrukce vyžaduje také prozkoumání skutečné chybující instrukce a sestavení binárního souboru, protože poškození dat nebo nesouvisející nepodporovaná instrukce mohou vyvolat podobný projev.

Nainstalujte verzi aplikace, ovladače nebo běhového prostředí podporovanou pro danou platformu a v případě potřeby použijte výrobcem zdokumentované základní nebo náhradní sestavení. Aktualizace softwaru nemůže vytvořit instrukci, kterou procesor fyzicky postrádá. Změny firmwaru a zásad zabezpečení by se měly řídit postupem výrobce systému a plánem obnovy, nikoli obecným návodem na optimalizaci.

Zdroje a rozsah tohoto vysvětlení

Intel Virtualization Technology for Directed I/O Architecture Specification · Linux kernel: VFIO device access and IOMMU groups

Tyto referenční dokumenty stanovují architektonické chování a softwarové požadavky. Neověřují nezávisle každou hodnotu funkce na odkazované stránce hardwarového modelu. Informace o podpoře konkrétního modelu čerpejte z podkladů výrobce na příslušné stránce a zkontrolujte platnou konfiguraci systému. Tento článek neposkytuje benchmark, certifikaci ani datum nezávislého přezkumu.

Zdroje a ověření

Redakční vlastnictví: Feex. Není zaznamenáno žádné datum nezávislého přezkoumání. Jak provádíme výzkum.

Byl tento článek užitečný?

Stačí ano nebo ne. Pokud chcete, vyberte důvod nebo přidejte krátkou poznámku.

Byl tento článek užitečný?