21 апреля состоялся крупный выпуск QEMU версии 11.0 — свободной программы с открытым исходным кодом для эмуляции аппаратного обеспечения различных платформ.
QEMU включает в себя эмуляцию процессоров Intel x86 и устройств ввода-вывода. Может эмулировать 80386, 80486, Pentium, Pentium Pro, AMD64 и другие x86-совместимые процессоры; ARM, MIPS, RISC-V, PowerPC, SPARC, SPARC64 и частично m68k. Работает на Syllable, FreeBSD, OpenBSD, FreeDOS, Linux, Windows 9x, Windows 2000, Mac OS X, QNX, Android и др. Подробности можно посмотреть на странице Википедии и на странице проекта.
Приложение Podroid позволяет пользователю запускать на устройстве под управлением Android облегченную виртуальную машину Alpine Linux с использованием QEMU и предоставляет полностью работоспособную среду выполнения контейнеров Podman со встроенным терминалом.
Приложение для собственной работы использует Termux в качестве эмулятора терминала, Limbo Emulator — основанный на QEMU эмулятор для Android, Podman для запуска контейнера с Alpine Linux.
Из отдельных возможностей: проброс портов из контейнера на реальную Android-систему через SSH.
Приложение для своей работы требует Android 9+ arm64.
Исходный код распространяется по лицензии GNU GPL v2
Ведущий разработчик проекта io_uring
и утилиты fio (github.com) для гибкого тестирования подсистем ввода-вывода – Йенс Аксбо (Jens Axboe) – обратился за помощью к нейросети Claude компании Anthropic. Нейросеть помогла Аксбо разобраться со сбоями при работе QEMU – утилиты для запуска виртуальных машин. Аксбо заметил, что она тормозит при работе с дисками AHCI и SCSI. Нейросеть помогла ему найти решение, ускорившее использование io_uring в 50-80-раз.
МЦСТ выпустила эмулятор QEMU для архитектуры E2K. Теперь программы для Эльбруса можно запускать на компьютерах с архитектурой x86‑64. Это откроет платформу для профессионалов, исследователей и энтузиастов, а также упростит разработчикам сборку и тестирование ПО.
Эмулятор qemu-e2k обеспечивает возможность, используя операционную систему семейства Linux запускать прикладные программы для операционных систем семейства Linux в машинных кодах Эльбрус (e2k) на компьютере архитектуры x86-64.
Состоялся выпуск nEMU версии 3.4.0. nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами. Код написан на языке C и распространяется под лицензией BSD-2.
В рамках проекта Google Summer of Code 2024 операционная система Haiku достигла значительного прогресса в области виртуализации. Благодаря работе разработчика под псевдонимом dalme, QEMU на Haiku теперь поддерживает аппаратное ускорение.
Проект был направлен на перенос гипервизора NVMM с DragonFlyBSD на Haiku. Это позволяет QEMU использовать аппаратные расширения виртуализации процессора, такие как Intel VT-x, что потенциально обеспечивает производительность виртуальных машин, близкую к нативной.
Вышла новая версия открытого кросс-платформенного эмулятора различных процессорных архитектур QEMU.
Наиболее интересные изменения:
Добавлено устройство virtio-sound. Оно позволяет захватывать и проигрывать аудио на соответствующим образом сконфигурированном бекенде хоста.
Добавлено устройство virtio-gpu rutabaga с возможностью различных абстракций GPU и виртуализации экранов.
Теперь можно мигрировать ВМ с virtio-gpu blob=true, а новый параметр «avail-switchover-bandwidth» поможет пользователям, у которых миграция затягивается и становится мало контролируемой.
QEMU Team выпустила новую версию эмулятора QEMU 8.0.0, которая содержит более 2800 коммитов от 238 авторов. Создатели выразили благодарность всем, кто внес свой вклад в разработку, будь то написание кода, сообщение об ошибках, улучшение документации, тестирование или предоставление ресурсов CI.
QEMU (Quick Emulator) — это эмулятор с открытым исходным кодом, который позволяет пользователям запускать операционные системы и приложения на различных аппаратных платформах. Он может эмулировать различные архитектуры ЦП, что позволяет разрабатывать и тестировать кроссплатформенное программное обеспечение.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами.
Код написан на языке C и распространяется под лицензией BSD-2.
Доступен релиз qemu 7.1, программы для эмуляции аппаратного обеспечения различных платформ. В этой версии внесено более 2800 изменений от 238 разработчиков.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами.
Код написан на языке C и распространяется под лицензией BSD-2.
Основные изменения:
Поддержка -netdev user (hostfwd, smb). Позволяет без каких-либо дополнительных настроек сети предоставить доступ во внешнюю сеть виртуальной машине.
Поддержка QMP команд snapshot-{save, load, delete}, появившихся в QEMU-6.0.0. Теперь для работы со снепшотами больше нет необходимости патчить QEMU.
Корректное отображение форм ввода и редактирования параметров при изменении размера окна (баге было семь лет, @GrafIn героически пофиксил).
API для удаленного управления виртуальными машинами. Теперь nEMU умеет принимать JSON команды через TLS сокет. Описание методов находится в файле remote_api.txt. Также был написан Android клиент. С помощью него в данный момент можно запускать, останавливать и подключаться к виртуальным машинам по протоколу SPICE.
QEMU — программа для эмуляции с открытым исходным кодом, которую можно использовать как в качестве эмулятора (например, можно запустить программу, которая написана для архитектуры ARM на x86-совместимом компьютере), так и в качестве виртуальной машины.
Основные нововведения, доступные в этом выпуске:
PowerPC:
для эмуляции систем pseries увеличен лимит на максимальное количество CPU и добавлена поддержка обнаружения сбоев при горячем подключении в новых гостевых окружениях;
реализована поддержка эмуляции некоторых префиксов инструкций, специфичных для процессоров POWER10;
добавлена поддержка плат на основе чипов Genesi/bPlan Pegasos II (pegasos2);
ARM:
появилась поддержка плат на базе чипов Aspeed, npcm7xx, Cortex-M3;
поддерживаются движки для хеширования и шифрования в чипах Aspeed;
включена поддержка эмуляции инструкций SVE2 (включая bfloat16), операторов для умножения матриц и команд сброса буферов ассоциативной трансляции (TLB);
x86:
добавлена поддержка новых моделей процессоров Intel с поддержкой XSAVES инструкций;
для эмуляции Q35 машин стала доступной возможность горячего подключения устройств PCI (теперь по умолчанию);
улучшена эмуляция расширений виртулизации в процессорах AMD;
RISC-V:
добавлена поддержка virtio-vga;
проведено улучшение документации и проведена чистка кода;
реализована поддержка платформы OpenTitan от Google
s390:
добавлена поддержка процессоров 16 поколения;
реализована поддержка векторных расширений;
I2C:
реализована поддержка I2C-мультиплексоров (pca9546, pca9548) и PMBus;
Вышла новая версия проекта QEMU 6.0. QEMU позволяет запускать программы, собранные для одной архитектуры на другой, например, выполнить приложение для ARM на обычном x86 или х86_64 ПК. В режиме виртуализации в QEMU производительность близка к аппаратной системе за счёт прямого выполнения инструкций на CPU и задействования Xen или модуля KVM.
Изначально проект был создан для запуска x86 Linux ПО на других архитектурах. За годы разработки была добавлена поддержка полной эмуляции для 14 различных аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. При подготовке версии 6.0 внесено более 3300 изменений от 268 разработчиков.
Спустя нескольких месяцев разработки стала доступна первая версия набора патчей к QEMU, добавляющих поддержку отечественной архитектуры процессоров Эльбрус 2000.
На данный момент эмулятор поддерживает только 64-битные программы, скомпилированные под Linux. Реализованы почти 80% набора инструкций Эльбрус-8С.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами. Код написан на языке C и распространяется под лицензией BSD-2.
Что нового:
Добавлен демон мониторинга виртуальных машин: при изменении состояния шлет уведомление в D-Bus через интерфейс org.freedesktop.Notifications.
Новые ключи для управления виртуальными машинами с командной строки: --powerdown, --force-stop, --reset, --kill.
Поддержка эмуляции NVMe дисков.
Теперь на старте программы проверяется актуальность версии базы данных с виртуальными машинами.
Добавлена поддержка альтернативных имен для сетевых интерфейсов (>= Linux 5.5).
При экспорте карты сети в SVG формат теперь можно выбрать схемы dot или neato (на больших картах лучше ведет себя neato).
Введен запрет на создание снепшотов если в виртуальную машину проброшены USB устройства. Это приводило к невозможности загрузить снепшот после их извлечения, фича QEMU.
Новые параметры в файле конфигурации, секция [nemu-monitor]:
autostart — автоматически запускать демон мониторинга при старте программы
sleep — интервал опроса состояния виртуальных машин демоном
pid — путь до pid файла демона
dbus_enabled — включает уведомления в D-Bus
dbus_timeout — время отображения уведомления
Для Gentoo Linux данный релиз уже доступен через live-ebuild (app-emulation/nemu-9999). Правда live ebuild там кривой, ибо его ленятся обновлять, поэтому лучше взять nemu-2.3.0.ebuild из репы проекта. Ссылка на deb-пакеты для Debian и Ubuntu есть в репозитории. Также есть возможность собрать rpm-пакет.
Разработчики из проекта Wine представили первую версию Hangover — инструмента, позволяющего запускать x86_64-программы для Windows на устройствах с архитектурой ARM под управлением GNU/Linux или Android.
Как указано на странице проекта, на данный момент Hangover находится в ранней стадии разработки: количество полноценно работающих под ним приложений ещё невелико и даже в них пользователям следует ожидать серьёзных просадок в производительности.
Первая версия Hangover выпущена под номером 0.4.0, так как в его основе лежит Wine 4.0. Для эмуляции x86_64 используется Qemu, при этом разработчики заявляют о более высокой производительности за счёт эмуляции на уровне API win32.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами. Код написан на языке C и распространяется под лицензией BSD-2.
Нововведения:
Добавлена поддержка протокола SPICE (Он же используется по умолчанию для подключения к виртуальным машинам).
Утилита ntty позволяет удобно подключаться к виртуальной машине по последовательному порту, перенаправленному в AF_UNIX сокет.
Добавлена возможность изменить размер «окон» внутри программы с помощью стрелок.
Файл конфигурации претерпел следующие изменения:
Параметр «spice_default» позволяет выбрать SPICE либо VNC протокол по умолчанию для подключения к вновь импортированным/установленным виртуальным машинам.
Параметр «vnc_bin» задает путь к VNC клиенту.
Параметр «vnc_args» конструирует параметры vnc клиента. Формат: %p - подстановка порта, %t - подстановка имени виртуальной машины в название окна (необязательный).
Параметр «spice_bin» задает путь к SPICE клиенту.
Параметр «spice_args» конструирует параметры SPICE клиента. Формат: %p - подстановка порта, %t - подстановка имени виртуальной машины в название окна (необязательный). Пример: --title %t spice://127.0.0.1:%p
Для Gentoo Linux данный релиз уже доступен через live-ebuild (app-emulation/nemu-9999). Сылка на Deb-пакеты для Debian и Ubuntu и актуальные ебилды есть в репозитарии.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами. Код написан на языке C и распространяется под лицензией BSD-2.
Нововведения:
Экспорт карты сети в SVG формате
Теперь можно выбрать стандарт USB (EHCI/xHCI)
В конфигурационный файл добавлена опция hl_color, позволяющая менять цвет отображения работающей виртуальной машины
Добавлен параметр --create-veth, создающий все необходимые VETH интерфейсы
Более детальная информация по сетевым интерфейсам виртуальной машины
Изменения:
Состояние виртуальной машины отныне отслеживается посредством попытки соединения с соответствующим qmp сокетом, а не только его наличием.
Минимальная поддерживаемая версия QEMU теперь 2.12.0
Ранние версии программы доступны в некоторых дистрибутивах Linux.
Slimbootloader – это реализация EFI на базе Coreboot, но под лицензией BSD и может обновляться как обычное UEFI. Пока поддерживается только платформа Apollo Lake и пока не понятно, будут ли поддерживаться другие платформы. Стоит отметить, что также поддерживается QEMU.
nEMU — это ncurses-интерфейс к QEMU, упрощающий создание, настройку и управление виртуальными машинами. Код написан на языке C и распространяется под лицензией BSD-2.
В этом релизе был полностью переписан пользовательский интерфейс, т.к. старый был изначально странен и неудобен.