Virtualizace X86 - X86 virtualization

x86 virtualizace je použití funkcí virtualizace podporovaných hardwarem na procesoru x86 / x86-64.

Na konci devadesátých let byla virtualizace x86 dosažena složitými softwarovými technikami, které byly nezbytné k vyrovnání nedostatku procesoru při virtualizaci s podporou hardwaru při dosažení přiměřeného výkonu. V letech 2005 a 2006 Intel (VT-x ) a AMD (AMD-V ) představil omezenou podporu virtualizace hardwaru, která umožňovala jednodušší virtualizační software, ale nabídla jen velmi málo rychlostních výhod.[1] Vyšší podpora hardwaru, která umožňovala podstatná vylepšení rychlosti, přišla s pozdějšími modely procesorů.

Softwarová virtualizace

Následující diskuse se zaměřuje pouze na virtualizaci architektury x86 chráněný režim.

V chráněném režimu běží jádro operačního systému s vyššími oprávněními, například prsten 0 a aplikace s nižším oprávněním, například ring 3.[Citace je zapotřebí ] Ve virtualizaci založené na softwaru má hostitelský operační systém přímý přístup k hardwaru, zatímco hostující operační systémy mají omezený přístup k hardwaru, stejně jako jakákoli jiná aplikace hostitelského operačního systému. Jeden přístup používaný v softwarové virtualizaci x86 k překonání tohoto omezení se nazývá zbavení kruhu, což zahrnuje provozování hostujícího OS na kruhu vyšším (méně privilegovaném) než 0.[2]

Virtualizace chráněného režimu umožnila tři techniky:

  • Binární překlad se používá k přepsání instrukcí ring 3 určitých instrukcí ring 0, jako např POPF, které by jinak selhaly tiše nebo se chovaly jinak, kdyby byly provedeny nad prstenem 0,[3][4]:3 dělat klasiku virtualizace trap-and-emulate nemožné.[4]:1[5] Chcete-li zlepšit výkon, přeloženo základní bloky je třeba ukládat do mezipaměti koherentním způsobem, který detekuje oprava kódu (použito v VxDs například), opětovné použití stránek hostujícím OS, nebo dokonce samočinně se měnící kód.[6]
  • Řada klíčových datových struktur používaných procesorem musí být ve stínu. Protože většina operačních systémů používá stránkovaná virtuální paměť a poskytnutí přímého přístupu hostujícímu OS k MMU by znamenalo ztrátu kontroly ze strany správce virtualizace, některé práce x86 MMU je třeba duplikovat v softwaru pro hostující OS pomocí techniky známé jako stínové tabulky stránek.[7]:5[4]:2 To zahrnuje odepření hostujícího OS jakýkoli přístup ke skutečným položkám tabulky stránek tím, že se pokusí zachytit pokusy o přístup a místo toho je emulovat v softwaru. Architektura x86 používá k ukládání skrytý stav deskriptory segmentů v procesoru, takže jakmile byly deskriptory segmentů načteny do procesoru, může být přepsána paměť, ze které byly načteny, a neexistuje způsob, jak získat deskriptory zpět z procesoru. Stínové deskriptorové tabulky musí být proto použit ke sledování změn provedených v tabulkách deskriptorů hostujícím OS.[5]
  • Emulace I / O zařízení: Nepodporovaná zařízení v hostujícím OS musí být emulována pomocí a emulátor zařízení který běží v hostitelském OS.[8]

Tyto techniky způsobují určitou režii výkonu kvůli nedostatku podpory virtualizace MMU ve srovnání s virtuálním počítačem běžícím na nativně virtualizovatelné architektuře, jako je Systém IBM / 370.[4]:10[9]:17 a 21

Na tradičních sálových počítačích klasika typ 1 hypervisor byl samostatný a nezávisel na žádném operačním systému ani sám nespouštěl žádné uživatelské aplikace. Naproti tomu první virtualizační produkty x86 byly zaměřeny na počítače pracovních stanic a provozovaly hostující OS uvnitř hostitelského OS vložením hypervisoru do modulu jádra, který běžel pod hostitelským OS (hypervisor typu 2).[8]

Existují určité diskuse, zda je architektura x86 bez hardwarové pomoci virtualizovatelná, jak popisuje Popek a Goldberg. VMware vědci poukázali v roce 2006 ASPLOS papír, že výše uvedené techniky učinily platformu x86 virtualizovatelnou ve smyslu splnění tří kritérií Popka a Goldberga, i když ne klasickou technikou trap-and-emulate.[4]:2–3

Jinými systémy se vydaly jinou cestou Denali, L4, a Xen, známý jako paravirtualizace, což zahrnuje portování operační systémy běžící na výsledném virtuálním stroji, který neimplementuje části aktuální sady instrukcí x86, které se těžko virtualizují. Paravirtualizovaný I / O má významné výhody výkonu, jak bylo prokázáno v originálu SOSP '03 Xenový papír.[10]

Počáteční verze x86-64 (AMD64 ) neumožnil úplnou virtualizaci pouze pro software kvůli nedostatku podpory segmentace v dlouhý režim, což znemožnilo ochranu paměti hypervisoru, zejména ochranu obsluhy pastí, která běží v adresním prostoru hostovaného jádra.[11][12]:11 a 20 Revize D a novější 64bitové procesory AMD (zpravidla ty, které se vyrábějí v 90 nm nebo méně) přidaly základní podporu pro segmentaci v dlouhém režimu, což umožnilo provozovat 64bitové hosty v 64bitových hostitelích pomocí binárního překladu . Intel do své implementace x86-64 nepřidal podporu segmentace (Intel 64 ), což na procesorech Intel znemožňuje 64bitovou virtualizaci pouze pro software, ale podpora Intel VT-x umožňuje 64bitovou virtualizaci podporovanou hardwarem na platformě Intel.[13][14]:4

Na některých platformách je možné spustit 64bitového hosta na 32bitovém hostitelském operačním systému, pokud je základní procesor 64bitový a podporuje potřebná rozšíření virtualizace.

Hardwarově podporovaná virtualizace

V letech 2005 a 2006 Intel a AMD (pracující samostatně) vytvořil nový rozšíření procesoru na architekturu x86. První generace hardwarové virtualizace x86 řešila problém privilegovaných pokynů. Problém nízkého výkonu virtualizované systémové paměti byl vyřešen MMU virtualizace, která byla do čipové sady přidána později.

Centrální procesorová jednotka

Virtuální režim 8086

Na základě bolestivé zážitky s 80286 chráněný režim, který sám o sobě nebyl dostatečně vhodný pro běh souběžně DOS aplikace dobře, Intel představil virtuální režim 8086 v jejich 80386 čip, který nabídl virtualizované procesory 8086 na čipech 386 a novějších. Hardwarová podpora pro virtualizaci samotného chráněného režimu však byla k dispozici o 20 let později.[15]

Virtualizace AMD (AMD-V)

AMD Phenom procesor

Společnost AMD vyvinula své první generace virtualizačních rozšíření pod krycím názvem „Pacifica“ a původně je vydala jako AMD Secure Virtual Machine (SVM),[16] ale později je prodával pod ochrannou známkou Virtualizace AMD, zkráceně AMD-V.

23. května 2006 společnost AMD vydala Athlon 64 ("Orleans" ), Athlon 64 X2 ("Windsor" ) a Athlon 64 FX ("Windsor" ) jako první procesory AMD podporující tuto technologii.

Funkce AMD-V také obsahuje Athlon 64 a Athlon 64 X2 rodina procesorů s revizemi "F" nebo "G" na zásuvka AM2, Turion 64 X2, a Opteron 2. generace[17] a třetí generace,[18] Phenom a Phenom II procesory. The APU Fusion procesory podporují AMD-V. AMD-V není podporován žádným procesorem Socket 939. Jediný Sempron procesory, které ji podporují, jsou APU a Huron, Regore, Sargas stolní procesory.

Procesory AMD Opteron počínaje řadou Family 0x10 Barcelona a procesory Phenom II podporují technologii virtualizace hardwaru druhé generace s názvem Rychlé indexování virtualizace (dříve známý jako Nested Page Tables during its development), později adoptovaný společností Intel as Rozšířené tabulky stránek (EPT).

Od roku 2019 vše moderní Zen procesory AMD založené na AMD podporují AMD-V.

The Příznak CPU pro AMD-V je „svm“. To může být ohlášeno BSD deriváty přes dmesg nebo sysctl a v Linux přes / proc /cpuinfo.[19] Pokyny v AMD-V zahrnují VMRUN, VMLOAD, VMSAVE, CLGI, VMMCALL, INVLPGA, SKINIT a STGI.

Virtualizace Intel (VT-x)

Intel Core i7 (Bloomfield) CPU

Dříve s kódovým označením „Vanderpool“ představuje VT-x technologii společnosti Intel pro virtualizaci na platformě x86. Dne 13. Listopadu 2005 společnost Intel vydala dva modely Pentium 4 (Model 662 a 672) jako první procesory Intel podporující VT-x. Příznak CPU pro schopnost VT-x je "vmx"; v Linuxu to lze zkontrolovat pomocí / proc / cpuinfo, nebo v Operační Systém Mac přes funkce sysctl machdep.cpu.[19]

„VMX“ znamená Virtual Machine Extensions, který přidává 13 nových pokynů: VMPTRLD, VMPTRST, VMCLEAR, VMREAD, VMWRITE, VMCALL, VMLAUNCH, VMRESUME, VMXOFF, VMXON, INVEPT, INVVPID a VMFUNC.[20] Tyto pokyny umožňují vstoupit a ukončit režim virtuálního spuštění, kde se hostující OS vnímá jako spuštěný s plným oprávněním (kruh 0), ale hostitelský OS zůstává chráněn.

Od roku 2015, téměř všechny novější serverové, stolní a mobilní procesory Intel podporují VT-x, s některými z nich Intel Atom procesory jako primární výjimka.[21] S nějakým základní desky, uživatelé musí povolit funkci Intel VT-x v BIOS nastavení, než ho aplikace budou moci využívat.[22]

Intel začal zahrnovat Rozšířené tabulky stránek (EPT),[23] technologie pro virtualizaci tabulky stránek,[24] od Nehalem architektura,[25][26] vydáno v roce 2008. V roce 2010 Westmere přidána podpora pro spouštění logického procesoru přímo ve Windows skutečný režim - funkce zvaná „neomezený host“, která vyžaduje fungování EPT.[27][28]

Protože Haswell microarchitecture (oznámeno v roce 2013), Intel začal zahrnovat Stínování VMCS jako technologie, která zrychluje vnořená virtualizace VMM.[29]The struktura řízení virtuálního stroje (VMCS) je datová struktura v paměti, která existuje přesně jednou na VM, zatímco je spravována VMM. S každou změnou kontextu provádění mezi různými virtuálními počítači se pro aktuální virtuální počítač obnoví virtuální počítačový server, který definuje stav virtuálního procesoru virtuálního počítače.[30] Jakmile se použije více než jeden VMM nebo vnořené VMM, objeví se problém podobným způsobem, jaký je vyžadován pro správu tabulky stínových stránek, jak je popsáno výše. V takových případech musí být VMCS vícekrát zastíněn (v případě vnoření) a částečně implementován do softwaru v případě, že procesor neposkytuje žádnou hardwarovou podporu. Aby byla práce se stínovým VMCS efektivnější, implementovala Intel hardwarovou podporu pro stínování VMCS.[31]

Virtualizace VIA (VIA VT)

VIA Nano Procesory řady 3000 a vyšší podporují virtualizační technologii VIA VT kompatibilní s Intel VT-x.[32] EPT je přítomen v Zhaoxin ZX-C, potomek VIA QuadCore-E & Eden X4 podobně jako Nano C4350AL.[33]

Přerušit virtualizaci (AMD AVIC a Intel APICv)

V roce 2012 společnost AMD oznámila své Pokročilý řadič virtuálního přerušení (AVIC) cílení na snížení přerušení režie ve virtualizačních prostředích.[34] Tato technologie, jak byla oznámena, nepodporuje x2APIC.[35]V roce 2016 je AVIC k dispozici u procesorů AMD řady 15h, modelů 6Xh (Carrizo) a novějších.[36]

Také v roce 2012 společnost Intel oznámila podobnou technologii pro přerušení a APIC virtualizace, která v době oznámení neměla název značky.[37]Později byl označen jako Virtualizace APIC (APICv)[38]a stal se komerčně dostupným v EU Ivy Bridge EP řada procesorů Intel, která se prodává jako Xeon E5-26xx v2 (uvedena na trh koncem roku 2013) a jako Xeon E5-46xx v2 (uvedena na začátku roku 2014).[39]

Jednotka grafického zpracování

Virtualizace grafiky není součástí architektury x86. Intel Technologie virtualizace grafiky (GVT) poskytuje virtualizaci grafiky jako součást novějších grafických architektur Gen. Ačkoli AMD APU implementovat x86-64 instrukční sadu implementují vlastní grafické architektury AMD (TeraScale, GCN a RDNA ), které nepodporují virtualizaci grafiky. Larrabee byla jediná grafika mikroarchitektura založeno na x86, ale pravděpodobně neobsahovalo podporu pro virtualizaci grafiky.

Chipset

Virtualizaci paměti a I / O provádí chipset.[40] Tyto funkce musí být obvykle povoleny systémem BIOS, který je musí být schopen podporovat a musí být nastaven na jejich používání.

Virtualizace I / O MMU (AMD-Vi a Intel VT-d)

Jednotka pro správu vstupní / výstupní paměti (IOMMU) umožňuje host virtuální stroje přímo použít obvodový zařízení, jako je Ethernet, akcelerované grafické karty a řadiče pevných disků DMA a přerušit přemapování. Někdy se tomu říká PCI průchod.[41]

IOMMU také umožňuje operačním systémům eliminovat odrazové vyrovnávací paměti potřebné k tomu, aby mohly komunikovat s periferními zařízeními, jejichž adresní prostory paměti jsou menší než adresní prostor paměti operačního systému, pomocí překladu adres paměti. Současně IOMMU také umožňuje operačním systémům a hypervisorům zabránit v chybném nebo škodlivém hardwaru kompromitující zabezpečení paměti.

AMD i Intel vydali své specifikace IOMMU:

  • Technologie I / O virtualizace AMD, „AMD-Vi“, původně nazývaná „IOMMU“[42]
  • „Virtualizační technologie Intel pro směrované I / O“ (VT-d),[43] součástí většiny špičkových zařízení (ale ne všech) Nehalem a novější procesory Intel[44]

Kromě podpory CPU oba základní deska chipset a systémový firmware (BIOS nebo UEFI ) je třeba plně podporovat funkce virtualizace IOMMU I / O, aby byla použitelná. Pouze PCI nebo PCI Express zařízení podporující reset úrovně funkcí (FLR) lze virtualizovat tímto způsobem, protože je to nutné pro opětovné přiřazení různých funkce zařízení mezi virtuálními stroji.[45][46] Pokud přiřazené zařízení nepodporuje Přerušení signalizace zprávy (MSI), nesmí sdílet přerušit linky s jinými zařízeními, aby bylo možné přiřazení.[47]Všechno konvenční PCI zařízení směrovaná za PCI /PCI-X -to-PCI Express most může být přiřazen hostovanému virtuálnímu stroji pouze najednou; Zařízení PCI Express takové omezení nemají.

Virtualizace sítě (VT-c)

  • „Virtualizační technologie Intel pro připojení“ (VT-c).[48]
Virtual-I / O virtualizace PCI-SIG (SR-IOV)

Virtual-I / O virtualizace PCI-SIG (SR-IOV) poskytuje sadu obecných (non-x86 specifických) I / O virtualizačních metod založených na PCI Express (PCIe) nativní hardware podle standardu PCI-SIG:[49]

  • Překladatelské služby adres (ATS) podporuje nativní IOV přes PCI Express prostřednictvím překladu adres. Ke konfiguraci takových překladů je nutná podpora nových transakcí.
  • Single-root IOV (SR-IOV nebo SRIOV) podporuje nativní IOV ve stávajících topologiích PCI Express s komplexním kořenem. Ke konfiguraci více virtualizovaných konfiguračních prostorů vyžaduje podporu nových funkcí zařízení.[50]
  • Multi-root IOV (MR-IOV) podporuje nativní IOV v nových topologiích (například blade servery) tím, že staví na SR-IOV a poskytuje více kořenových komplexů, které sdílejí společnou hierarchii PCI Express.

V SR-IOV, nejběžnějším z nich, hostitelský VMM konfiguruje podporovaná zařízení tak, aby vytvářela a přidělovala virtuální „stíny“ jejich konfiguračních prostorů, takže hosté virtuálního stroje mohou přímo konfigurovat a přistupovat k těmto „stínovým“ prostředkům zařízení.[51] S povoleným SR-IOV jsou virtualizovaná síťová rozhraní přímo přístupná hostům,[52]vyhýbání se zapojení VMM a výsledkem je vysoký celkový výkon;[50] například SR-IOV dosahuje více než 95% holý kov šířka pásma sítě v NASA virtualizované datové centrum[53] a v Veřejný cloud Amazon.[54][55]

Viz také

Reference

  1. ^ Srovnání softwarových a hardwarových technik pro virtualizaci x86, Keith Adams a Ole Agesen, VMware, ASPLOS’06 21. – 25. Října 2006, San Jose, Kalifornie, USA Archivováno 2010-08-20 na Wayback Machine „Překvapivě zjistíme, že hardwarová podpora první generace zřídka nabízí výkonnostní výhody oproti stávajícím softwarovým technikám. Tuto situaci připisujeme vysokým nákladům na přechod VMM / host a rigidnímu programovacímu modelu, který ponechává malý prostor pro flexibilitu softwaru při správě frekvence nebo náklady na tyto přechody.
  2. ^ „Intel Virtualization Technology Processor Virtualization Extensions and Intel Trusted execution Technology“ (PDF). Intel.com. 2007. Archivováno (PDF) od originálu 2015-05-21. Citováno 2016-12-12.
  3. ^ „Technický program USENIX - Abstrakt - Bezpečnostní sympozium - 2000“. Usenix.org. 2002-01-29. Archivováno od originálu 2010-06-10. Citováno 2010-05-02.
  4. ^ A b C d E „Srovnání softwarových a hardwarových technik pro virtualizaci x86“ (PDF). VMware. Archivováno (PDF) z původního dne 20. srpna 2010. Citováno 8. září 2010.
  5. ^ A b US patent 6 397 242
  6. ^ US patent 6 704 925
  7. ^ „Virtualizace: architektonické aspekty a další kritéria hodnocení“ (PDF). VMware. Archivováno (PDF) z původního dne 6. února 2011. Citováno 8. září 2010.
  8. ^ A b US patent 6,496,847
  9. ^ „Technologie VMware a Hardware Assist“ (PDF). Archivováno (PDF) od originálu dne 2011-07-17. Citováno 2010-09-08.
  10. ^ „Xen a umění virtualizace“ (PDF). Archivováno (PDF) z původního dne 2014-09-29.
  11. ^ „Jak vyřazená segmentace v dlouhém režimu AMD64 přerušila VMware“. Pagetable.com. 9. 11. 2006. Archivováno od originálu dne 2011-07-18. Citováno 2010-05-02.
  12. ^ „Technologie virtualizace VMware a CPU“ (PDF). VMware. Archivováno (PDF) od originálu dne 2011-07-17. Citováno 2010-09-08.
  13. ^ „VMware KB: Hardwarové a firmwarové požadavky pro 64bitové operační systémy pro hosty“. Kb.vmware.com. Archivováno z původního dne 2010-04-19. Citováno 2010-05-02.
  14. ^ „Softwarové a hardwarové techniky pro virtualizaci x86“ (PDF). Archivovány od originál (PDF) dne 2010-01-05. Citováno 2010-05-02.
  15. ^ Yager, Tom (11.11.2004). "Odesílání softwaru pro práci s hardwarem | Hardware - InfoWorld". Images.infoworld.com. Archivováno od originálu dne 2014-10-18. Citováno 2014-01-08.
  16. ^ „33047_SecureVirtualMachineManual_3-0.book“ (PDF). Archivováno (PDF) z původního dne 2012-03-05. Citováno 2010-05-02.
  17. ^ „Jaké jsou hlavní rozdíly mezi procesory AMD Opteron druhé generace a procesory AMD Opteron první generace?“. amd.com. Archivovány od originál dne 15. dubna 2009. Citováno 2012-02-04.
  18. ^ „Jaká vylepšení virtualizace obsahují čtyřjádrové procesory AMD Opteron?“. amd.com. Archivovány od originál 16. dubna 2009. Citováno 2012-02-04.
  19. ^ A b Chcete-li zjistit, zda váš procesor podporuje virtualizaci hardwaru Archivováno 2012-11-25 na Wayback Machine Intel 2012.
  20. ^ INTEL (říjen 2019). „Příručka pro vývojáře softwaru Intel® 64 a IA-32 Architectures“. intel.com. Intel Corporation. Citováno 2020-01-04.
  21. ^ „Seznam virtualizačních technologií Intel“. Ark.intel.com. Archivováno od originálu 2010-10-27. Citováno 2010-05-02.
  22. ^ „Windows Virtual PC: Konfigurace BIOSu“. Microsoft. Archivovány od originál dne 06.09.2010. Citováno 2010-09-08.
  23. ^ Neiger, Gil; A. Santoni; F. Leung; D. Rodgers; R. Uhlig. „Intel Virtualization Technology: Hardware Support for Efficient Processor Virtualization“ (PDF). Intel Technology Journal. Intel. 10 (3): 167–178. doi:10.1535 / itj.1003.01. Archivovány od originál (PDF) dne 25. 9. 2012. Citováno 2008-07-06.
  24. ^ Gillespie, Matt (11.11.2007). „Best Practices for Paravirtualization Enhancements from Intel Virtualization Technology: EPT and VT-d“. Softwarová síť Intel. Intel. Archivováno z původního dne 2008-12-26. Citováno 2008-07-06.
  25. ^ „Nejprve klíště, nyní tock: mikroarchitektura Intel nové generace (Nehalem)“ (PDF) (Tisková zpráva). Intel. Archivováno (PDF) od původního dne 26.01.2009. Citováno 2008-07-06.
  26. ^ „Stručný přehled technologie: Intel Microarchitecture Nehalem Virtualization Technology“ (PDF). Intel. 2009-03-25. Archivováno (PDF) z původního dne 2011-06-07. Citováno 2009-11-03.
  27. ^ http://2013.asiabsdcon.org/papers/abc2013-P5A-paper.pdf:[trvalý mrtvý odkaz ] „Společnost Intel přidala neomezený režim hosta na mikroarchitektuře Westmere a novějších procesorech Intel a používá EPT k překladu přístupu fyzické adresy hosta na fyzickou adresu hostitele. V tomto režimu je povolen VMEnter bez povoleného stránkování.“
  28. ^ http://download.intel.com/products/processor/manual/326019.pdf:[trvalý mrtvý odkaz ] „Je-li„ spouštění VM “„ neomezeným hostem “1, musí být„ spuštění EPT “ovládání VM také 1
  29. ^ „Procesory Intel Core vPro 4. generace s technologií Intel VMCS Shadowing“ (PDF). Intel. 2013. Citováno 2014-12-16.
  30. ^ Porozumění virtualizační technologii Intel (VT). Archivováno 8. září 2014 na adrese Wayback Machine Citováno 2014-09-01
  31. ^ „Co, kde a proč“ stínování VMCS. Archivováno 03.09.2014 na Wayback Machine Citováno 2014-09-01
  32. ^ VIA představuje nové procesory řady VIA Nano 3000 Archivováno 22. ledna 2013, v Wayback Machine
  33. ^ „Notebookové řešení: Procesor Kaixian ZX-C + čipová sada VX11PH“ (PDF).
  34. ^ Wei Huang, Představení AMD Advanced Virtual Interrupt Controller Archivováno 2014-07-14 na Wayback Machine, XenSummit 2012
  35. ^ Jörg Rödel (srpen 2012). „Přerušená virtualizace nové generace pro KVM“ (PDF). AMD. Archivováno (PDF) z původního dne 2016-03-04. Citováno 2014-07-12.
  36. ^ „[Xen-devel] [RFC PATCH 0/9] Představte AMD SVM AVIC“. www.mail-archive.com. Archivováno z původního dne 2. února 2017. Citováno 4. května 2018.
  37. ^ Června Nakajimaa (2012-12-13). „Kontrola nevyužitých a nových funkcí pro přerušení / virtualizaci APIC“ (PDF). Intel. Archivováno (PDF) od původního dne 2015-04-21. Citováno 2014-07-12.
  38. ^ Khang Nguyen (2013-12-17). „Testování výkonu virtualizace APIC a Iozone“. software.intel.com. Archivováno od originálu 2014-07-14. Citováno 2014-07-12.
  39. ^ „Stručná informace o produktu Intel Xeon Processor E5-4600 v2 Product Family“ (PDF). Intel. 2014-03-14. Archivováno (PDF) od originálu 2014-07-14. Citováno 2014-07-12.
  40. ^ „Hardwarová podpora platformy Intel pro virtualizaci I / O“. Intel.com. 10. 8. 2006. Archivováno od originálu 2007-01-20. Citováno 2012-02-04.
  41. ^ „Linuxová virtualizace a průchod PCI“. IBM. Archivováno z původního dne 1. listopadu 2009. Citováno 10. listopadu 2010.
  42. ^ „AMD I / O Virtualization Technology (IOMMU) Specification Revision 1.26“ (PDF). Archivováno (PDF) od původního dne 2011-01-24. Citováno 2011-05-24.
  43. ^ „Intel Virtualization Technology for Directed I / O (VT-d) Architecture Specification“. Archivováno z původního dne 2013-04-03. Citováno 2012-02-04.
  44. ^ „Intel Virtualization Technology for Directed I / O (VT-d) Supported CPU List“. Ark.intel.com. Archivováno od originálu 2010-10-27. Citováno 2012-02-04.
  45. ^ „PCI-SIG Engineering Change Note: Function Level Reset (FLR)“ (PDF). pcisig.com. 2006-06-27. Archivováno (PDF) z původního dne 2016-03-04. Citováno 2014-01-10.
  46. ^ „Xen VT-d“. xen.org. 2013-06-06. Archivováno z původního dne 2014-02-09. Citováno 2014-01-10.
  47. ^ „Jak přiřadit zařízení s VT-d v KVM“. linux-kvm.org. 2014-04-23. Archivováno od původního dne 2015-03-10. Citováno 2015-03-05.
  48. ^ „Intel Virtualization Technology for Connectivity (VT-c)“ (PDF). Intel.com. Archivováno (PDF) od originálu na 2016-02-22. Citováno 2018-02-14.
  49. ^ „Specifikace virtualizace I / O PCI-SIG (IOV)“. Pcisig.com. 31.03.2011. Archivováno od originálu dne 2012-01-15. Citováno 2012-02-04.
  50. ^ A b „Intel Look Inside: Intel Ethernet“ (PDF). Intel. 27. listopadu 2014. str. 104. Archivováno (PDF) z původního dne 4. března 2016. Citováno 26. března 2015.
  51. ^ Yaozu Dong, Zhao Yu, Greg Rose (2008). „SR-IOV Networking in Xen: Architecture, Design and Implementation“. usenix.org. USENIX. Archivováno z původního dne 2014-01-09. Citováno 2014-01-10.CS1 maint: používá parametr autoři (odkaz)
  52. ^ Patrick Kutch; Brian Johnson; Greg Rose (září 2011). „Úvod do flexibilního dělení portů Intel pomocí technologie SR-IOV“ (PDF). Intel. Archivováno (PDF) od originálu 7. srpna 2015. Citováno 24. září 2015.
  53. ^ „Flexibilní cloudová technologie NASA: Přesun klastrových aplikací do cloudu“ (PDF). Intel. Archivováno (PDF) od původního dne 2012-12-22. Citováno 2014-01-08.
  54. ^ „Enhanced Networking in the AWS Cloud“. Škálovatelná logika. 31. 12. 2013. Archivováno z původního dne 2014-01-09. Citováno 2014-01-08.
  55. ^ „Enhanced Networking in the AWS Cloud - Part 2“. Škálovatelná logika. 31. 12. 2013. Archivováno od originálu dne 2014-01-10. Citováno 2014-01-08.

externí odkazy