Выпуск эмулятора QEMU 2.2.0

Анонсирован релиз QEMU 2.2. В качестве эмулятора QEMU позволяет запустить программу, собранную для одной аппаратной платформы, на системе с совершенно иной архитектурой, например, выполнить приложение для ARM на x86-совместимом ПК. В режиме виртуализации в QEMU производительность выполнения кода в изолированном окружении близка к нативной системе за счёт прямого выполнения инструкций на CPU и задействования гипервизора Xen или модуля KVM. Изначально проект был создан Фабрисом Белларом (Fabrice Bellard) с целью обеспечения возможности запуска собранных для платформы x86 исполняемых файлов Linux на архитектурах, отличных от x86. За годы разработки была добавлена поддержка полной эмуляции для 14 аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. Всего в разработке всех выпусков QEMU приняло участие более 400 авторов, которые подготовили около 30 тысяч изменений. При подготовке версии 2.2 внесено около 1700 изменений от 171 разработчика.

Ключевые улучшения, добавленные в QEMU 2.2:

В многопоточный вариант бэкенда virtio-blk, используемого для эмуляции блочных устройств, добавлена поддержка изменения размера диска, горячего отключения, поддержка встроенной в QEMU реализации NBD, различные возможности по управлению дисками, такие как горячее резервное копирование, потоковая передача, зеркалирование и слияние снапшотов; Представлена экспериментальная реализация многопоточного варианта бэкенда для virtio-scsi, используемая по аналогии с virtio-blk (»-object iothread, id=id» и »-device virtio-scsi-pci, iothread=id»); Поддержка горячего подключения контроллеров USB (XHCI/EHCI/UHCI); Поддержка клавиатур и мышей с интерфейсом USB 2.0; Улучшение механизма live-миграции для гостевых систем, использующих паравиртулизированный таймер KVM; Поддержка непосредственной загрузки Linux-ядер (bzImage) с использованием опции «qemu -kernel» для гостевых систем под управлением гипервизора Xen; Поддержка эмуляции IOMMU (VT-d) для гостевых систем на базе архитектуры x86 Q35 (эмуляция IOMMU включается через »-machine iommu=on»); Поддержка эмуляции на базе классического генератора кода TCG (Tiny Code Generator) точек останова и интерфейса прошивок PSCI для гостевых систем с архитектурой ARM; Поддержка эмуляции архитектур TriCore, MIPS64 rel 6 и MIPS SIMD; Поддержка эмуляции окружений для гостевых систем с OS X 10.2, 10.3 и 10.4 при выборке эмулируемой платформы mac99; В эмуляцию на базе TCG добавлены оптимизации для гостевых систем для архитектуры PowerPC. В эмуляторе на базе TCG обеспечена возможность запуска QNX; Обеспечена возможность запуска NetBSD и OpenBSD под управлением qemu-system-sparc64 в режиме »-nographic»; Поддержка эмуляции LSI MegaRAID SAS 2108 HBA (»-device megasas-gen2»); Предлагаемое по умолчанию VGA-устройство для архитектуры x86 заменено с cirrus на stdvga, которое более оптимально для большинства гостевых систем.

© OpenNet