Компания Siemens выпустила гипервизор Jailhouse 0.9

5 июня 2018 года

Wikinews-logo-ru.svg

Компания Siemens представила выпуск свободного гипервизора Jailhouse 0.9, компоненты для гостевых систем которого уже включены в состав основного ядра 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, регионы памяти и порты ввода/вывода.

В новом выпуске

  • Добавлена поддержка платформ Emtrion emCON-RZ/G1H, NXP MCIMX8M-EVK и NVIDIA Jetson TX2;
  • Реализована инфраструктура для подключения модулей с реализацией расширенной функциональности на этапе сборки;
  • В демонстрационных окружениях (inmates) унифицировано размещение секции с командной строкой;
  • Команда для загрузки Linux улучшена в плане разделения обработки ядра и initramfs;
  • Для платформ ARM и ARM64 добавлена возможность запуска окружений с включением MMU и кэшированием, добавлена поддержка загрузки сжатых образов с Linux;
  • Для платформы x86 улучшена эмуляция инструкций MMIO. С целью повышения защищённости обеспечен перехват инструкций AMD SVM.

Из реализованных, но не вошедших в релиз новых возможностей отмечается система привязанных к CPU таблиц гипервизора (для защиты от атак Spectre), переработка демонстрационных окружений с поддержкой SMP для систем ARM/ARM64, новый биндинг на языке Python для доступа к управляющему интерфейсу, доведение до конца работы над интерфейсом на базе virtio для организации взаимодействия между камерами.

 

ИсточникиПравить


Эта статья содержит материалы из статьи «Компания Siemens выпустила гипервизор Jailhouse 0.9», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
 

Комментарии:Компания Siemens выпустила гипервизор Jailhouse 0.9