Siemens vrijgegeven hypervisor . De hypervisor ondersteunt werking op x86_64-systemen met VMX+EPT of SVM+NPT (AMD-V) uitbreidingen, evenals op ARMv7 en ARMv8/ARM64-processoren met virtualisatie-uitbreidingen. Apart is er een image generator voor de Jailhouse hypervisor, die is opgebouwd uit Debian-pakketten voor ondersteunde apparaten. De projectcode onder GPLv2-licentie.
de hypervisor is geïmplementeerd als een module voor de Linux-kernel en biedt virtualisatie op kernel-niveau. Componenten voor gastsystemen zijn al opgenomen in de hoofdLinux-kernel. Voor het beheren van isolatie worden de door moderne CPU's geboden hardware virtualisatie mechanismen gebruikt. Kenmerkende eigenschappen van Jailhouse zijn de lichtgewicht implementatie en de focus op het toewijzen van virtuele machines aan een vaste CPU, geheugengebieden en hardware apparaten. Deze aanpak maakt het mogelijk om op één fysieke multiprocessor server meerdere onafhankelijke virtuele omgevingen te creëren, elk gebonden aan hun eigen processorkern.
Bij strikte toewijzing aan de CPU worden de overheadkosten van de hypervisor tot een minimum beperkt en wordt de implementatie aanzienlijk vereenvoudigd, omdat er geen complexe resource-distributieschema's hoeven te worden uitgevoerd — het toewijzen van een aparte CPU-kern garandeert dat er geen andere taken op die CPU worden uitgevoerd. Een voordeel van deze aanpak is de mogelijkheid om gegarandeerde toegang tot bronnen en voorspelbare prestaties te bieden, waardoor Jailhouse een geschikte oplossing is voor taken die in realtime moeten worden uitgevoerd. Een nadeel is de beperkte schaalbaarheid, die tegen het aantal CPU-kernen aanloopt.
In de terminologie van Jailhouse worden virtuele omgevingen «cellen» genoemd (cell, in de context van jailhouse). Binnen de cel lijkt het systeem op een één-processor server die prestaties toont de prestaties van een toegewezen CPU-kern. In de cel kan een omgeving van elk besturingssysteem worden uitgevoerd, evenals afgeslankte omgevingen voor het draaien van één applicatie of speciaal voorbereide afzonderlijke applicaties, bedoeld voor het oplossen van realtime taken. De configuratie wordt bepaald in , die de toegewezen omgeving CPU, geheugengebieden en invoer-/uitgangspoorten bepalen.

In de nieuwe uitgave
- Ondersteuning voor Marvell MACCHIATObin, Xilinx Ultra96, toegevoegd.
Microsys miriac SBC-LS1046A en Texas Instruments AM654 IDK; - Statistieken per CPU-core toegevoegd;
- Reset van PCI-apparaten verzekerd bij uitschakeling van de camera;
- De structuur van de Device Tree is aangepast voor de nieuwste versies van de Linux-kernel;
- Bescherming tegen Spectre v2-aanvallen toegevoegd voor ARM en ARM64-platforms. De instellingen voor qemu-arm64 zijn bijgewerkt met de laatste wijzigingen van QEMU. Problemen met het overschrijven van de PSCI-firmware op Orange Pi Zero-borden zijn opgelost;
- Voor het x86-platform is het gebruik van SSE- en AVX-instructies ingeschakeld bij het opstarten van demonstratieomgevingen (inmates) en is er een rapport over uitzonderingen toegevoegd.
Toekomstplannen omvatten de langverwachte ondersteuning van IOMMUv3, verbeterde efficiëntie van het gebruik van de CPU-cache (), het oplossen van problemen met de APIC op AMD Ryzen-processoren, herontwerp van het ivshmem-apparaat en de voortgang van stuurprogramma's in de hoofdkernel.
Bron: opennet.ru
