Azienda Siemens rilascio del hypervisor open source . Il hypervisor supporta il funzionamento su sistemi x86_64 con estensioni VMX+EPT o SVM+NPT (AMD-V), così come su processori ARMv7 e ARMv8/ARM64 con estensioni per la virtualizzazione. Separatamente generatore di immagini per il hypervisor Jailhouse, creato sulla base di pacchetti Debian per i dispositivi supportati. Il codice del progetto è sotto licenza GPLv2.
Il hypervisor è implementato come un modulo per il kernel Linux e fornisce virtualizzazione a livello di kernel. I componenti per i sistemi guest sono già inclusi nel kernel principale di Linux. Per gestire l'isolamento vengono utilizzati i meccanismi hardware di virtualizzazione forniti dai CPU moderni. Le caratteristiche distintive di Jailhouse sono una realizzazione leggera e un orientamento verso il vincolo delle macchine virtuali a CPU fisse, aree di RAM e dispositivi hardware. Questo approccio consente di garantire su un server multi-processore fisico il funzionamento di più ambienti virtuali indipendenti, ognuno dei quali è vincolato al proprio core di processore.
Con il rigido vincolo alla CPU, i costi generali del funzionamento del hypervisor sono ridotti al minimo e la sua implementazione è notevolmente semplificata, poiché non è necessario eseguire un complesso pianificatore di distribuzione delle risorse: l'assegnazione di un core CPU separato garantisce l'assenza di esecuzione su quella CPU di altri compiti. Un vantaggio di questo approccio è la possibilità di garantire l'accesso alle risorse e prestazioni prevedibili, il che rende Jailhouse una soluzione adatta per la creazione di compiti eseguiti in tempo reale. Uno svantaggio è la limitata scalabilità, che dipende dal numero di core CPU.
Nella terminologia di Jailhouse, gli ambienti virtuali sono chiamati «celle» (cell, nel contesto di jailhouse). All'interno della cella, il sistema appare come un server a singolo processore, mostrando prestazioni alle prestazioni di un core CPU dedicato. All'interno della cella può essere eseguito un ambiente di qualsiasi sistema operativo, nonché ambienti ridotti per eseguire un'unica applicazione o applicazioni appositamente preparate, destinate a risolvere compiti in tempo reale. La configurazione è definita nei , che definiscono i CPU, le aree di memoria e le porte di input/output assegnate all'ambiente.

Nel nuovo rilascio
- Supporto aggiunto per le piattaforme Marvell MACCHIATObin, Xilinx Ultra96,
Microsys miriac SBC-LS1046A e Texas Instruments AM654 IDK; - Statistica aggiunta per ciascun core CPU;
- Ripristino dei dispositivi PCI garantito al termine dell'operazione della telecamera;
- Struttura del Device Tree adattata per le ultime versioni del kernel Linux;
- Per le piattaforme ARM e ARM64, è stata aggiunta una protezione contro gli attacchi Spectre v2. Le impostazioni di qemu-arm64 tengono conto delle modifiche delle ultime versioni di QEMU. Risolti i problemi di sovrascrittura del firmware PSCI sulle schede Orange Pi Zero;
- Per la piattaforma x86, durante l'avvio degli ambienti dimostrativi (inmates), è stato abilitato l'uso delle istruzioni SSE e AVX, ed è stato aggiunto un report sulle eccezioni.
Tra i piani futuri si segnala il tanto atteso supporto per IOMMUv3, il miglioramento dell'efficienza dell'uso della cache del processore (), la risoluzione dei problemi con APIC sui processori AMD Ryzen, la riprogettazione del dispositivo ivshmem e la promozione dei driver nel kernel principale.
Fonte: opennet.ru
