IOMMU
Një IOMMU përkthen dhe kufizon qasjet në memorie me origjinë nga pajisjet. Sjellja e mbrojtjes dhe e kalimit të drejtpërdrejtë (passthrough) varen nga topologjia e platformës, firmware-i, konfigurimi i OS-së dhe i drajverit.
Çfarë duhet të dini
Një IOMMU përkthen dhe kufizon qasjet në memorie me origjinë nga pajisjet. Sjellja e mbrojtjes dhe e kalimit të drejtpërdrejtë (passthrough) varen nga topologjia e platformës, firmware-i, konfigurimi i OS-së dhe i drajverit.
Si funksionon
Një pajisje lëshon transaksione DMA duke përdorur adresa të interpretuara nga një njësi përkthimi I/O. OS-ja ose hipervizori konfiguron domenet dhe hartëzimet që shoqërojnë ato kërkesa me memorien e lejuar të sistemit. Identitetet e pajisjeve, kufijtë e përbashkët të përkthimit dhe trajtimi i ndërprerjeve ndikojnë në izolimin praktik.
Ku është e dobishme
Një VM mund të marrë një pajisje të mbështetur përmes një strukture që zbaton grupin e saj të izolimit IOMMU. Pajisjet që ndajnë një grup mund të kenë nevojë të caktohen së bashku sepse platforma nuk mund të krijojë izolim të pavarur në kufirin e dëshiruar.
Si të kontrollohet mbështetja dhe aktivizimi
Shqyrtoni përshkrimin e IOMMU-së të platformës dhe statusin e aktivizuar, grupet dhe kërkesat e caktimit të pajisjeve të OS-së/hipervizorit. Në Intel, ekzaminoni VT-d; në AMD, përdorni mekanizmat e dokumentuar të virtualizimit I/O të AMD-së. Kontrolloni sjelljen e saktë të rivendosjes (reset) dhe drajverit të pajisjes.
Një vendosje e virtualizuar ka disa shtresa: aftësinë fizike, lejen e firmware-it, hipervizorin aktiv të strehuesit, aftësitë e ekspozuara të mysafirit dhe mbështetjen e OS-it mysafir. Kontrolloni shtresën ku ekzekutohet aktualisht operacioni, duke përfshirë virtualizimin e ndërthurur kur është e rëndësishme.
Çfarë nuk përcakton kjo veçori
Një flamur IOMMU nuk provon se çdo pajisje periferike është e izoluar në mënyrë të pavarur ose që mbrojtja është aktive. Vetëm mbrojtjet e tabelës së faqeve të CPU-së nuk e kufizojnë të gjithë DMA-në e pajisjes. Tejkalimet e pambështetura të topologjisë mund të dobësojnë izolimin dhe nuk janë një zgjidhje rutinë për përputhshmërinë.
Përputhshmëria dhe performanca në praktikë
Ekzekutimi i CPU-së, përkthimi i memories së mysafirit dhe rihartimi DMA i pajisjeve janë funksione të veçanta. Mos supozoni pasimin e drejtpërdrejtë ose izolimin nga një fushë e vetme virtualizimi. Përdorni diagnostikimet e mbështetura të hipervizorit dhe kërkesat e sakta të platformës/pajisjes.
Një listë praktike kontrolli për verifikim
- Regjistroni modelin e saktë të procesorit ose platformës dhe versionet e përfshira të aplikacionit, sistemit operativ dhe mjedisit të ekzekutimit. Ruani formulimin e gabimit ose kërkesës aktuale.
- Kontrolloni referencën e prodhuesit për atë model të saktë, më pas inspektoni aftësinë efektive dhe gjendjen e aktivizuar në mjedisin ku ekzekutohet programi.
- Krahasoni çdo kërkesë të binarit ose prapavijës së zgjedhur. Një veçori me emër të ngjashëm, një pseudonim ose një etiketë e gjerë teknologjike nuk mjafton.
- Konfirmoni që aplikacioni ka zgjedhur implementimin e synuar. Përdorni diagnostikimet e dokumentuara të tij dhe një alternativë të mbështetur kur kërkesat nuk plotësohen.
- Bëni një ndryshim të mbështetur në një moment dhe përsëritni të njëjtën ngarkesë pune. Mbajeni të disponueshme konfigurimin origjinal dhe rrugën e rikuperimit.
Nëse veçoria listohet por softueri nuk mund ta përdorë atë
Filloni me komponentin e saktë që dështon. Një bazë të dhënash harduerike përshkruan aftësinë e regjistruar; sistemi operativ ose hipervizori mund të ekspozojë një mjedis efektiv të ndryshëm. Një gabim instruksioni të paligjshëm kërkon gjithashtu hetim të instruksionit aktual me defekt dhe të ndërtimit të binarit, sepse dëmtimi ose një instruksion i palidhur i pambështetur mund të prodhojë një simptomë të ngjashme.
Instaloni versionin e aplikacionit, drajverit ose mjedisit të ekzekutimit të mbështetur për platformën e saktë, dhe përdorni versionin bazë ose alternativ të dokumentuar nga prodhuesi nëse është e nevojshme. Një përditësim softueri nuk mund të krijojë një instruksion që procesorit i mungon. Ndryshimet në firmware dhe politikat e sigurisë duhet të ndjekin procedurën e prodhuesit të sistemit dhe një plan rikuperimi në vend të një recete të përgjithshme optimizimi.
Burimet dhe fusha e këtij shpjegimi
Intel Virtualization Technology for Directed I/O Architecture Specification · Linux kernel: VFIO device access and IOMMU groups
Këto referenca përcaktojnë sjelljen arkitekturore dhe kërkesat e softuerit. Ato nuk verifikojnë në mënyrë të pavarur çdo vlerë të veçorive në faqen e lidhur të modelit të harduerit. Për mbështetjen e modelit, përdorni dëshmitë e prodhuesit në atë faqe dhe kontrolloni konfigurimin efektiv të sistemit. Ky artikull nuk ofron një test standard vlerësimi, certifikim ose datë shqyrtimi të pavarur.
Burimet dhe verifikimi
Pronësia editoriale: Feex. Nuk është regjistruar asnjë datë shqyrtimi të pavarur. Si hulumtojmë.
- Intel Virtualization Technology for Directed I/O Architecture Specification · Arkitektura e rihartëzimit të DMA-së, domenet e përkthimit, rihartëzimi i ndërprerjeve dhe strukturat e raportimit të firmware-it. Mbështetja e platformës duhet të përcaktohet veçmas.
- Linux kernel: VFIO device access and IOMMU groups · Shpjegon grupet e izolimit, pronësinë e pajisjes dhe kufizimet relevante për kalimin e drejtpërdrejtë (passthrough). Nuk është një listë përputhshmërie për një pllakë amë të caktuar.
A ishte i dobishëm ky artikull?
Një po ose jo mjafton. Zgjidhni një arsye nëse dëshironi, ose shtoni një shënim të shkurtër.
Faleminderit. Kjo na ndihmon ta përmirësojmë këtë faqe.