После восемнадцати месяцев разработки представлен (http://blog.xen.org/index.php/2012/09/17/xen-4-2-0-released/) релиз свободного гипервизора Xen 4.2 (http://xen.org/download/index_4.2.0.html). По сравнению с прошлым выпуском в Xen 4.2 внесено 2900 коммитов, в подготовке которых приняло участие (http://wiki.xen.org/wiki/Xen_4.2_Acknowledgments) 124 разработчика и 43 организации. Наибольшее число коммитов добавлено разработчиками из компании Citrix (1270), SUSE (501), Xen.org (216), AMD (138) и Intel (107).
Если в процессе развития ветки 4.1 была произведена интеграция в штатное ядро Linux компонентов Xen, необходимых для обеспечения работы Dom0, то ветка 4.2 примечательна работой по передаче проекту QEMU кода с реализаций модели взаимодействия с устройствами HVM. Изначально проектом Xen развивался собственный форк инструментария и драйверов, основанных на QEMU, но в процессе подготовки релиза QEMU 0.15 (https://www.opennet.ru/opennews/art.shtml?num=31441) было произведено возвращение в родительский проект всех созданных в Xen дополнений и изменений. Слияние кодовых баз для общих компонентов Xen и QEMU позволило избавиться от выполнения двойной работы и перейти к более тесному сотрудничеству. Похожая передача кода также произведена для проектов SeaBIOS (http://www.seabios.org/) и Tianocore/OVMF (http://sourceforge.net/apps/mediawiki/tianocore/index.php?ti...) (UEFI BIOS).
Ключевые улучшения (http://wiki.xen.org/wiki/Xen_4.2_Feature_List) в Xen 4.2.0:
- Переход на использование по умолчанию инструментария XL (http://wiki.xen.org/wiki/XL), пришедшего на смену XM/XEND (поддержка XEND будет прекращена в Xen 4.3). Функционально XL эквивалентен и обратно совместим с ранее созданными для XM файлами конфигурации и может выступать в роли прозрачной замены xend для большинства систем. Из возможностей присутствующих в XM/XEND, но пока не реализованных в XL можно отметить (http://wiki.xen.org/wiki/XL_vs_Xend_Feature_Comparison) поддержку проброса USB и SCSI устройств, возможность включения Python-кода в файлы конфигурации и поддержку управляемых доменов ("xm vm-create").
XL базируется на использовании библиотеки libxl, предоставляющей простой и надежный управляющий API, позволяющий напрямую использовать большинство возможностей инструментария XL в сторонних приложениях. API libxl объявлен стабильным, что в будущем позволит обеспечить его поддержку в таких внешних инструментариях, как libvirt и XCP xapi;
- Поддержка (http://wiki.xen.org/wiki/Xen_Release_Features) работы на больших системах, включающих до 4095 процессоров на стороне хоста и до 512 виртуальных процессоров на стороне паравиртуализированной гостевой системы (для HVM - 256). Число адресуемой 64-разрядным хостом памяти увеличено до 5 Тб. Кроме того, добавлены такие возможности, как поддержка множественных сегментов PCI, автоматическое создания пула CPU (CPUPOOL) для NUMA-узлов и интеллектуальная расстановка VCPU по NUMA-узлам;
- Улучшение механизмов безопасности: многочисленные улучшения внесены во фреймворк XSM (http://wiki.xen.org/wiki/XSM) (Xen Security Modules) и модули Flask (http://www.cs.utah.edu/flux/fluke/html/flask.html), обеспечена поддержка режима SMEP (Intel Supervisor Mode Execution Protection), позволяющего предотвратить выполнение гипервизором страниц памяти из пространства пользователя, что существенно усложняет эксплуатацию уязвимостей гипервизора. Упрощены примеры настройки политик безопасности;
- Улучшение производительности: поддержка AMD SVM DecodeAssist (позволяет избежать эмуляции), различные оптимизации работы планировщика, возможность использования Remus-сжатия для образов памяти виртуальных машин, ускорение работы проброса PCI-устройств, задействование инструкции xsave;
- В гипервизор добавлена поддержка EFI (extensible Firmware Interface), что позволило Xen загружать системы на базе EFI, а не только BIOS;
- Поддержка сетевой загрузки гостевых систем с использованием загрузчика Xenpvnetboot (http://wiki.xen.org/wiki/Xenpvnetboot_:_A_network_bootloader...);
- Возможность использования в гостевых системах компонентов QEMU, таких как qdisk и VFB.
- Начальная поддержка создания вложенных виртуальных окружений (гостевые системы HVM могут получить доступ к возможностям виртуализации оборудования, позволяющим запустить в гостевой системе собственный гипервизор);
- Удалена поддержка vnet и порта IA64;
- Обеспечена возможность сборки с использованием Clang.
URL: http://blog.xen.org/index.php/2012/09/17/xen-4-2-0-released/
Новость: https://www.opennet.ru/opennews/art.shtml?num=34866