+38/050/370-3627
+38/093/220-0872
+38/044/257-2444
Новини

Siemens представила випуск вільного гіпервізора Jailhouse 0.10

Siemens представила випуск вільного гіпервізора Jailhouse 0.10

Siemens представила випуск вільного гіпервізора Jailhouse 0.10, компоненти для гостьових систем якого вже включені до складу основного ядра Linux. Гіпервізор підтримує роботу на системах x86_64 з розширеннями VMX+EPT або SVM+NPT (AMD-V), а також на процесорах ARMv7 (Banana Pi, NVIDIA Jetson TK1, Versatile Express з Cortex-A15 або A7) та ARMv8/ARM64 (AMD Seattle) , LeMaker HiKey, NVIDIA Jetson TX1, Xilinx ZCU102) з розширеннями для віртуалізації. Код проекту розповсюджується під ліцензією GPLv2.

Гіпервізор реалізований у вигляді модуля для ядра Linux та забезпечує віртуалізацію на рівні ядра. Для управління ізоляцією використовуються апаратні механізми віртуалізації, що надаються сучасними CPU. Відмінними рисами Jailhouse є легковажна реалізація та орієнтація на прив'язку віртуальних машин до фіксованого CPU, області ОЗП та апаратних пристроїв. Такий підхід дозволяє на одному фізичному багатопроцесорному сервері забезпечити роботу кількох незалежних віртуальних оточень, кожне з яких закріплено за процесорним ядром.

При жорсткій прив'язці до CPU накладні витрати від роботи гіпервізора зводяться до мінімуму і суттєво спрощується його реалізація, оскільки немає необхідності виконання складного планувальника розподілу ресурсів - виділення окремого ядра CPU дозволяє гарантувати відсутність виконання на даному CPU інших завдань. Плюсом такого підходу є можливість забезпечити гарантований доступ до ресурсів та передбачувану продуктивність, що робить Jailhouse відмінним рішенням для створення рішень віртуалізації для режиму реального часу. Мінусом є обмежена масштабованість, що упирається в число ядер CPU.

У термінології Jailhouse віртуальні оточення називаються "камерами" (cell). Усередині камери система виглядає як однопроцесорний сервер, що показує продуктивність близьку до продуктивності виділеного ядра CPU. У камері може бути запущено оточення довільної операційної системи, урізані оточення для запуску однієї програми та спеціально підготовлені окремі програми, призначені для вирішення завдань реального часу. Конфігурація задається в .cell-файлах, що визначають виділені оточенню CPU, регіони пам'яті та порти вводу/виводу.

У новому випуску

  • Для захисту від атак Spectre/L1TF задіяна система прив'язаних до CPU таблиць сторінок пам'яті, що дозволяє не допустити витоку даних із камер у момент виконання коду гіпервізора;
  • Додано підтримку фреймбуфера EFI, який може виступати в ролі альтернативи UART;
  • Запропоновано новий біндинг мовою Python - "pyjailhouse", що надає API для керування гіпервізором;
  • Видалено код підтримки VGA (рекомендовано використовувати фреймбуфер EFI) та платформи VExpress (віртуальний ARMv7 для QEMU);
  • Команда "jailhouse hardware check" тепер не потребує конфігурації системи;
  • У демонстраційних оточеннях (inmates) всі налаштування, що виконуються на етапі збирання, перетворені на файли конфігурації камер і runtime-параметри запуску. У обробниках переривань для процесорів ARM забезпечено збереження/відновлення регістрів;
  • Для платформ ARM надано базову підтримку SMCCC (SMC Calling Convention);
  • Додано підтримку більше 8 ARM CPU з GICv3 (ARM Generic Interrupt Controller);

У наступному випуску планується поява декількох реалізацій IOMMU для ARM64, включення підтримки плати Xilinx Ultra96, стандартизація програмного інтерфейсу для обміну даними між камерами, підтримка virtio поверх транспортів на базі пам'яті, що розділяється.

Інші новини

Найкраща ціна