Компания Siemens освобождаване на хипервизора . Хипервизорът поддържа работа на системи x86_64 с VMX+EPT или SVM+NPT (AMD-V), както и на процесори ARMv7 и ARMv8/ARM64 с разширения за виртуализация. По отделно генератор на образи за хипервизора Jailhouse, създадени на базата на Debian пакети за поддържащи устройства. Кодът на проекта под лицензия GPLv2.
Хипервизорът е реализиран като модул за Linux ядро и осигурява виртуализация на ниво ядро. Компонентите за гостуващи системи вече са включени в основното ядро на Linux. За управление на изолацията се използват предоставените от съвременните CPU хардуерни механизми за виртуализация. Отличителните характеристики на Jailhouse са леката реализация и ориентацията към фиксирането на виртуални машини към определен CPU, области на RAM и хардуерни устройства. Този подход позволява на един физически многоядерен сървър да осигурява работата на множество независими виртуални среди, всяка от които е прикрепена към собственото си ядро.
При строга привързаност към CPU разходите от работата на хипервизора се свеждат до минимум и реализирането му става значително по-просто, тъй като няма нужда от сложен планировчик за разпределение на ресурсите — предоставянето на отделно CPU ядро гарантира, че на това CPU няма да се изпълняват други задачи. Плюсът на този подход е, че осигурява гарантиран достъп до ресурси и предсказуема производителност, което прави Jailhouse подходящо решение за задачи, работещи в реално време. Минусът е ограничената мащабируемост, зависеща от броя ядра на CPU.
В терминологията на Jailhouse виртуалните среди се наричат „камери“ (cell, в контекста на jailhouse). Вътре в камерата системата изглежда като еднопроцесорен сървър, показващ производителност до производителността на отделено CPU ядро. В камерата може да бъде стартирана среда на произволна операционна система, както и олекотени среди за изпълнение на едно приложение или специално подготвени отделни приложения, предназначени за решаване на задачи в реално време. Конфигурацията се задава в , определящи CPU, региони на паметта и входно/изходни портове.

В новото издание
- Добавена е поддръжка за платформите Marvell MACCHIATObin, Xilinx Ultra96,
Microsys miriac SBC-LS1046A и Texas Instruments AM654 IDK; - Добавена е статистика за всяко ядро на CPU;
- Осигурен е нулирането на PCI устройства при спиране на камерата;
- Структурата на Device Tree е адаптирана за последните версии на ядрото на Linux;
- За платформите ARM и ARM64 е добавена защита от атаки Spectre v2. В настройките на qemu-arm64 са взети предвид измененията в последните версии на QEMU. Решени са проблемите с презаписването на фърмуера PSCI на платките Orange Pi Zero;
- За платформата x86 при стартиране на демонстрационните среди (inmates) е включено използването на инструкции SSE и AVX, а също така е добавен отчет за изключения.
В бъдещите планове е отбелязана дългоочакваната поддръжка на IOMMUv3, повишаване на ефективността на използване на кеша на процесора (), отстраняване на проблемите с APIC на процесорите AMD Ryzen, преработка на устройството ivshmem и засилване на драйверите в основния състав на ядрото.
Източник: opennet.ru
