Siemens avatud hüperviisori väljaanne . Hüperviisor toetab töötamist x86_64 süsteemidel, millel on VMX+EPT või SVM+NPT (AMD-V) laiendused, samuti ARMv7 ja ARMv8/ARM64 protsessoritel, millel on virtualiseerimiseks mõeldud laiendused. Eraldi pakkide põhjal genereeritud Jailhouse hüperviisori piltide generaator Debian'i toetatud seadmete jaoks. Projekti kood GPLv2 litsentsi all.
Hüperviisor on teostatud Linuxi tuuma moodulina ja tagab virtualiseerimise tuuma tasandil. Külgmistesse süsteemidesse vajalikud komponendid on juba kaasatud Linuxi põhituuma. Isolatsiooni haldamiseks kasutatakse kaasaegsete CPU-de poolt pakutavaid riistvaramehhanisme. Jailhouse'i iseloomustavad kerged teostused ja suunatus virtuaalmasinate sidumisele kindlate CPU, RAM-i alade ja riistvaraseadmetega. Selline lähenemine võimaldab ühel füüsilisel mitme protsessoriga serveril käitada mitmeid sõltumatuid virtuaalkeskkondi, millest igaühes on kindel protsessorituuma külge seotud.
Kui CPU-le on rangelt siduv, siis hüperviisori töö kulud vähenevad miinimumini ja selle rakendamine muutub oluliselt lihtsamaks, kuna ei ole vaja keerulist ressursside jaotamise planeerijat — eraldi CPU tuuma eraldamine võimaldab tagada, et antud CPU-l ei toimu teisi ülesandeid. Sellise lähenemise plussiks on võimalus tagada garanteeritud juurdepääs ressurssidele ja ettearvatav jõudlus, mis muudab Jailhouse sobivaks lahenduseks reaalajas toimingute loomiseks. Miinuseks on piiratud skaleeritavus, mis sõltub CPU tuumade arvust.
Jailhouse'i terminoloogias nimetatakse virtuaalseid keskkondi „kaamerateks” (cell, Jailhouse'i kontekstis). Kaamera sees näeb süsteem välja nagu üheprotsessoriline server, mille jõudlus dedikaadi CPU jõudlusele. Kaameras saab käivitada mis tahes operatsioonisüsteemi, samuti kärbitud keskkondi, mis on ette nähtud ühe rakenduse käitamiseks või spetsiaalselt ettevalmistatud eraldiseisvate rakenduste käitamiseks reaalajas ülesannete lahendamiseks. Konfiguratsioon määratakse , mis määratlevad keskkonnale eraldatud CPU, mälu piirkonnad ja sisendi/väljundi portid.

Uues väljaandes
- Добавлена поддержка платформ Raspberry Pi 4 Model B и Texas Instruments J721E-EVM;
- устройство ivshmem, применяемое для организации взаимодействия между ячейками. Поверх нового ivshmem можно реализовать транспорт для VIRTIO;
- Реализована возможность отключения создания больших страниц памяти (hugepage) для блокирования уязвимости в процессорах Intel, которая позволяет непривилегированному атакующему инициировать отказ в обслуживании, приводящий к зависанию системы в состоянии «Machine Check Error»;
- Для систем с процессорами ARM64 реализована поддержка SMMUv3 (System Memory Management Unit) и TI PVU (Peripheral Virtualization Unit). Для изолированных окружений, запускаемых поверх оборудования (bare-metal), добавлена поддержка PCI;
- На системах x86 для корневых камер реализована возможность включения предоставляемого процессорами Intel режима CR4.UMIP (User-Mode Instruction Prevention), позволяющего запретить выполнение в пространстве пользователя некоторых инструкций, таких как SGDT, SLDT, SIDT, SMSW и STR, которые могут применяться в атаках, нацеленных на повышение привилегий в системе.
Allikas: opennet.ru
