Компания Siemens выпустила гипервизор Jailhouse 0.6
Организация взаимодействия с операционной системой в Jailhouse напоминает KVM, Jailhouse также обеспечивает виртуализацию на уровне ядра Linux, но отличается от KVM более легковесной реализацией и ориентацией на привязку виртуальных машин к фиксированному CPU, области ОЗУ и аппаратным устройствам. Такой подход позволяет на одном физическом многопроцессорном сервере обеспечить работу нескольких независимых виртуальных окружений, каждое из которых закреплено за своим процессорным ядром.
При жесткой привязке к CPU накладные расходы от работы гипервизора сводятся к минимуму и существенно упрощается его реализация, так как нет необходимости выполнения сложного планировщика распределения ресурсов - выделение отдельного ядра CPU позволяет гарантировать отсутствие выполнения на данном CPU других задач. Плюсом подобного подхода является возможность обеспечить гарантированный доступ к ресурсам и предсказуемую производительность, что делает Jailhouse отличным решением для создания решений виртуализации для задач режима реального времени. Минусом является ограниченная масштабируемость, упирающаяся в число ядер CPU.
В терминологии Jailhouse виртуальные окружения именуются ячейками. Внутри ячейки система выглядит как однопроцессорный сервер, показывающий производительность близкую к производительности выделенного ядра CPU. В ячейке может быть запущено окружение произвольной операционной системы, урезанные окружения для запуска одного приложения и специально подготовленные отдельные приложения, предназначенные для решения задач реального времени. Конфигурация задаётся в .cell-файлах, определяющих выделяемые окружению CPU, регионы памяти и порты ввода/вывода. Для управления изоляцией используются предоставляемые современными CPU аппаратные механизмы виртуализации. Гипервизор реализован в виде модуля для ядра Linux.
В новом выпуске:
- Переработана и доведена до готовности к применению поддержка процессоров ARMv7;
- Добавлена поддержка архитектуры ARMv8 и следующих плат на её основе: AMD Seattle / SoftIron Overdrive 3000, LeMaker HiKey, NVIDIA Jetson TX1 и Xilinx ZCU102;
- Поддержка загрузки нескольких экземпляров Linux, в однопроцессорном или многопроцессорном режимах (SMP), на всех поддерживаемых аппаратных архитектурах;
- Расширены средства обеспечения связи между ячейками, в том числе добавлен драйвер с реализацией виртуального сетевого протокола, работающий на всех поддерживаемых архитектурах;
- Внесена большая порция улучшений, связанных с работой на системах x86: Добавлена поддержка AMD IOMMU и технологии управления L3-кэшем Intel (Intel Cache Allocation Technology). Реализована поддержка новых процессоров Intel, включая SoC Apollo Lake;
- Поддержка субстраничных регионов MMIO (sub-page region).
В будущем планируется обеспечить регулярное формирование релизов (прошлая версия была выпущена в мае 2015 года), которые отныне будут развиваться в рамках трёхмесячного цикла разработки. Из планов по развитию функциональности отмечается переработка устройства для взаимодействия между ячейками (ivshmem 2.0), улучшение документации и автоматизация тестирования работы на поддерживаемых устройствах.
Источник: http://www.opennet.ru/opennews/art.shtml?num=45829
|
0 | Tweet | Нравится |
|