Microsoft har öppnat koden för hypervisorn OpenVMM och plattformen för paravirtualisering OpenHCL

Microsoft har meddelat att de öppnar kÀllkoden för grÀnsskiktet för para-virtualisering OpenHCL och monitorprogrammet för virtuella maskiner OpenVMM, som utvecklas specifikt för att organisera arbetet med OpenHCL. Koden för OpenVMM och OpenHCL Àr skriven i Rust och distribueras under MIT-licensen. OpenVMM tillhör andra nivÄns hypervisorer som arbetar i samma skyddsnivÄ som operativsystemets kÀrna, liknande produkter som VirtualBox och VMware Workstation. Det stöder drift pÄ vÀrdsystem baserade pÄ Linux (x86_64), Windows (x86_64, Aarch64) och macOS (x86_64, Aarch64), genom API:erna för virtualisering KVM, SHV (Microsoft Hypervisor), WHP (Windows Hypervisor Platform) och Hypervisor.framework som tillhandahÄlls av dessa operativsystem.

Bland de funktioner som stöds i OpenVMM:

  • Start i UEFI- och BIOS-lĂ€gen, direkt laddning av Linux-kĂ€rnan;
  • Stöd för para-virtualisering baserad pĂ„ Virtio-drivrutiner (virtio-fs, virtio-9p, virtio-net, virtio-pmem)
  • Stöd för para-virtualisering baserad pĂ„ VMBus (storvsp, netvsp, vpci, framebuffer);
  • Emulering av vTPM, NVMe, UART, chipset i440BX + PIIX4, IDE HDD, PCI och VGA;
  • Backend för vidarekoppling av grafik, inmatningsenheter, konsol, lagring och nĂ€tverkstスクセă‚č;
  • Hantera via kommandoradsgrĂ€nssnitt, interaktiv konsol, gRPC och ttrpc.

OpenHCL positioneras som en miljö med komponenter för para-virtualisering (para-visor) som arbetar ovanpÄ OpenVMM-hypervisorn. En nyckelfunktion för virtualiseringssystem baserade pÄ OpenVMM och OpenHCL Àr att komponenterna för para-virtualisering utförs inte pÄ vÀrdsystemets sida, utan i en virtuell maskin med gÀstsystemet. Isoleringen av grÀnsskiktet för para-virtualisering frÄn gÀstoperativsystemet sÀkerstÀlls av den andra nivÄs hypervisorn OpenVMM. OpenHCL kan i detta anvÀndningsomrÄde betraktas som en virtuell firmware som körs pÄ en högre privilegienivÄ Àn det operativsystem som körs i gÀstmiljön.

Separeringen av gÀstsystemet och OpenHCL-komponenterna sker genom anvÀndning av konceptet för virtuella förtroendenivÄer (VTL, Virtual Trust Level), dÀr bÄde programvarutekniker och hÄrdvarutekniker kan anvÀndas, sÄsom Intel TDX (Trust Domain Extensions), AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) och ARM CCA (Confidential Compute Architecture). För att köra komponenterna i OpenHCL anvÀnds en nedskuren version av Linux-kÀrnan, som endast inkluderar de minimalt nödvÀndiga komponenterna för driften av OpenVMM.

Microsoft har öppnat koden för hypervisorn OpenVMM och plattformen för paravirtualisering OpenHCL

OpenHCL kan arbeta pÄ x86-64 och ARM64 plattformar och stöder Intel TDX, AMD SEV-SNP och ARM CCA utökningar för ytterligare isolering. OpenHCL bestÄr av en uppsÀttning tjÀnster, drivrutiner och emulatorer som anvÀnds för att organisera Ätkomst till hÄrdvaran, sÀkerstÀlla att virtuella enheter fungerar pÄ gÀstsystemet och emulera hÄrdvaruenheter (t.ex. kan en chip för att lagra kryptografiska nycklar emuleras - vTPM).

För att översÀtta Ätkomst till hÄrdvara pÄ gÀstsystemet tillÀmpas befintliga drivrutiner med stöd för para-virtualisering eller direkt bindning av enheter till den virtuella maskinen, vilket möjliggör överföring av befintliga gÀstsystem till en OpenHCL-baserad miljö utan att göra nÄgra Àndringar. Dessutom inkluderar OpenHCL komponenter för diagnos och felsökning virtuella maskiner, som utförs med hjÀlp av utökningar för att sÀkerstÀlla konfidentiella berÀkningar.

Till skillnad frÄn det redan existerande öppna projektet COCONUT-SVSM (Secure VM Service Module), som tillhandahÄller tjÀnster och emulerade enheter för gÀstsystem som utförs i konfidentiella virtuella maskiner (CVM, Confidential Virtual Machine), tillÄter OpenHCL anvÀndning av standardgrÀnssnitt i gÀstsystem, medan COCONUT-SVSM krÀver speciellt samarbete med SVSM, Àndringar i gÀstsystemet och anvÀndning av specifika drivrutiner.

NÄgra anvÀndningar av paraprogrammet OpenHCL nÀmns sÄsom att överföra befintliga system för att anvÀnda hÄrdvaruacceleratorer som Azure Boost utan att behöva göra Àndringar i diskavbildningen av gÀstsystemet; köra befintliga gÀstsystem i virtuella maskiner som stöder konfidentiella berÀkningar (t.ex. baserat pÄ Intel TDX och AMD SEV-SNP); organisera verifierad start av virtuella maskiner, med hjÀlp av UEFI Secure Boot-lÀge och vTPM.

Det bör sÀrskilt pÄpekas att projektet OpenVMM Àr fokuserat pÄ att anvÀnda OpenHCL och för nÀrvarande inte Àr redo för fristÄende anvÀndning pÄ vÀrdsystem för praktiska implementationer av slutanvÀndare. Bland problemen med OpenVMM som hindrar dess anvÀndning i traditionella vÀrdmiljöer, utanför kopplingen till OpenHCL, nÀmns: bristande dokumentation av det administrativa grÀnssnittet; avsaknad av tillrÀcklig prestandaoptimering för back-end-lagring, nÀtverk och grafik; bristande stöd för vissa drivrutiner (t.ex. IDE-diskar och PS/2-möss); ingen garanti för API:ets stabilitet och funktionalitet. Samtidigt har kopplingen mellan OpenVMM och OpenHCL redan nÄtt en nivÄ för industriell implementation och anvÀnds av Microsoft pÄ plattformen Azure (Azure Boost SKU) för att driva mer Àn 1,5 miljoner virtuella maskiner.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster