The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

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

24.04.2019 12:57

Сформирован релиз проекта QEMU 4.0. В качестве эмулятора QEMU позволяет запустить программу, собранную для одной аппаратной платформы, на системе с совершенно иной архитектурой, например, выполнить приложение для ARM на x86-совместимом ПК. В режиме виртуализации в QEMU производительность выполнения кода в изолированном окружении близка к нативной системе за счёт прямого выполнения инструкций на CPU и задействования гипервизора Xen или модуля KVM.

Изначально проект был создан Фабрисом Белларом (Fabrice Bellard) с целью обеспечения возможности запуска собранных для платформы x86 исполняемых файлов Linux на архитектурах, отличных от x86. За годы разработки была добавлена поддержка полной эмуляции для 14 аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. При подготовке версии 4.0 внесено более 3100 изменений от 220 разработчиков.

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

  • В эмулятор архитектуры ARM добавлена поддержка расширений инструкций ARMv8+: SB, PredInv, HPD, LOR, FHM, AA32HPD, PAuth, JSConv, CondM, FRINT и BTI. Добавлена поддержка эмуляции плат "Musca" и "MPS2". Улучшена эмуляция ARM PMU (Power Management Unit). В платформу virt добавлена возможность использования более 255 Гб ОЗУ и поддержка образов u-boot с типом "noload";
  • В эмуляторе архитектуры x86 в движке ускорения виртуализации HAX (Intel Hardware Accelerated Execution) добавлена поддержка POSIX-совместимых хостов, таких как Linux и NetBSD (ранее поддерживалась только платформа Darwin). В эмуляторе чипсета Q35 (ICH9) для основных портов PCIe опционально теперь может быть заявлена максимальная скорость (16GT/s) и число линий соединения (x32), определённых в спецификации PCIe 4.0 (для обеспечения совместимости по умолчанию для старых типов машин QEMU устанавливается 2.5GT/s и x1). Обеспечена возможность загрузки образов Xen PVH с опцией "-kernel";
  • В эмулятор архитектуры MIPS добавлена поддержка многопоточной эмуляции с использованием классического генератора кода TCG (Tiny Code Generator). Также добавлена поддержка эмуляции CPU I7200 (nanoMIPS32 ISA) и I6500 (MIPS64R6 ISA), возможность обработки запросов типа CPU с использованием протокола QMP (QEMU Management Protocol), добавлена поддержка конфигурационных регистров SAARI и SAAR. Улучшена работа виртуальных машин с типом Fulong 2E. Обновлена реализация Interthread Communication Unit;
  • В эмуляторе архитектуры PowerPC добавлена поддержка эмуляции контроллера прерываний XIVE, расширена поддержка POWER9, для P series добавлена возможность горячего подключения главных мостов PCI (PHB, PCI host bridge). Включена по умолчанию защита от атак Spectre и Meltdown;
  • В эмулятор архитектуры RISC-V добавлена поддержка эмлуляции PCI и USB. Во встроенным сервере отладки (gdbserver) реализована поддержка задания списков регистров в файлах XML. Добавлена поддержка mstatus-полей TSR, TW и TVM;
  • В эмулятор архитектуры s390 добавлена поддержка модели CPU z14 GA 2, а также поддержка эмуляции расширений инструкций для вычислений с плавающей запятой и векторными операциями. В vfio-ap добавлена возможность горячего подключения устройств;
  • В эмуляторе процессоров семейства Tensilica Xtensa улучшена поддержка SMP для Linux и добавлена поддержка расширения FLIX (Flexible length instructions extension);
  • В графический интерфейс добавлена опция '-display spice-app' для настройки и запуска варианта клиента удалённого доступа Spice с оформлением, похожим на GTK-интерфейс QEMU;
  • В реализацию VNC-сервера добавлена поддержка управления доступом при помощи опций tls-authz/sasl-authz;
  • В QMP (QEMU Management Protocol) добавлена поддержка централизованного/внешнего (Out-of-band) выполнения команд и реализованы дополнительные команды для работы с блочными устройствами;
  • В VFIO добавлена реализация интерфейса EDID для поддерживаемых mdev (Intel vGPU), позволяющая менять разрешение экрана, используя опции xres и yres;
  • Для Xen добавлено новое устройство 'xen-disk', которое самостоятельно может создать дисковый бэкенд для Xen PV (без обращения к xenstore). Увеличена производительность дискового бэкенда Xen PV и добавлена возможность изменения размера диска;
  • В сетевых блочных устройствах расширены возможности диагностики и трассировки, улучшена совместимость клиента с проблемными реализациями сервера NBD. В qemu-nbd добавлены опции "--bitmap", "--list" и "--tls-authz";
  • В эмулируемое устройство IDE/via добавлена поддержка режима PCI IDE ;
  • Добавлена поддержка использования алгоритма lzfse для сжатия образов dmg. Для формата qcow2 добавлена поддержка подключения внешних файлов с данными. Операции распаковки qcow2 вынесены в отдельный поток. В образах vmdk добавлена поддержка операции "blockdev-create";
  • В блочное устройство virtio-blk добавлена поддержка операций DISCARD (информирование об освобождении блоков) и WRITE_ZEROES (обнуление диапазона логических блоков);
  • В устройстве pvrdma реализована поддержка RDMA Management Datagram services (MAD);
  • Внесены изменения, нарушающие обратную совместимость. Например, вместо опции "handle" в "-fsdev" и "-virtfs" следует использовать опции "local" или "proxy". Удалены опции "-virtioconsole" (заменена на "-device virtconsole"), "-no-frame", "-clock", "-enable-hax" (заменена на "-accel hax"). Удалено устройство "ivshmem" (следует использовать "ivshmem-doorbell" иои "ivshmem-plain"). Прекращена поддержка сборки с SDL1.2 (нужно использовать SDL2).


  1. Главная ссылка к новости (http://lists.nongnu.org/archiv...)
  2. OpenNews: Релиз эмулятора QEMU 3.1
  3. OpenNews: Релиз эмулятора QEMU 3.0
  4. OpenNews: Релиз nEMU 1.4.0, консольного интерфейса для управления QEMU
  5. OpenNews: Основатель QEMU и FFmpeg развивает систему синхронизации файлов VFsync
  6. OpenNews: Проект NetBSD развивает новый гипервизор NVMM
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50567-qemu
Ключевые слова: qemu, virtual
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 13:21, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В модуль virtio-blk добавлена поддержка операций DISCARD (информирование об освобождении блоков) и WRITE_ZEROES (обнуление диапазона логических блоков);

    Казалось оно уже было, во всяком случае как то fstrim отрабатывал раньше же... может другой бекенд был кш

     
     
  • 2.3, leap42 (ok), 13:30, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Могу ошибаться, но оно было при подключении диска через SCSI шину. SCSI по-моему в принципе умеет TRIM, вот при его эмуляции и работало. Теперь и для паравиртуализованной шины заработало (давно пора, у меня, например, обе тачки all ssd).
     
  • 2.7, Stax (ok), 14:27, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Да не, не было. 5 лет уже как "хотели сделать": https://wiki.qemu-project.org/index.php?title=ToDo/Block&oldid=4410#virtio-blk
    и вот только сейчас сделали...
     

  • 1.2, Аноним (2), 13:29, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Парни, важный вопрос.
    Можно ли теперь запустить x86 приложуху на power ?

    Оч интересно мнение знатоков.

     
     
  • 2.5, пох (?), 13:53, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +/
    эмм... а что значит "теперь"? Оно у вас не собиралось на power раньше?

    Уж что-что, а x86-то эмулятор еще сам Беллард писал, он должен просто работать.
    (разумеется, _медленно_ - это эмулятор, каждую командочку - вручную будем исполнять)

     
     
  • 3.10, none_first (ok), 16:15, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > эмм... а что значит "теперь"? Оно у вас не собиралось на power
    > раньше?
    > Уж что-что, а x86-то эмулятор еще сам Беллард писал, он должен просто
    > работать.
    > (разумеется, _медленно_ - это эмулятор, каждую командочку - вручную будем исполнять)

    вот это https://ru.wikipedia.org/wiki/Virtual_PC запускал в 2005 под макосх (ППЦ5) сносно работало для В2К, хрю уже не раздуплялась
    с Q (мак порт) https://web.archive.org/web/20160303205232/http://www.kju-app.org/
    для хрю инсталятора невозможно было дождаться окончания

     
  • 2.16, Michael Shigorin (ok), 22:04, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Можно ли теперь запустить x86 приложуху на power ?

    Если Вам всерьёз и вдруг окажется, что qemu не может или недостаточно -- попробуйте достучаться до Eltechs, которые делают ExaGear.

     

  • 1.4, ыы (?), 13:45, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    icount починили таки?
     
  • 1.6, Аноним (6), 14:11, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как с пробросом USB и видеокарт?
     
     
  • 2.9, Аноним (9), 15:14, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Как и раньше, работает.
     

  • 1.8, Cradle (?), 15:01, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Там кстати поддержку stm32 начинали, нужно глянуть в каком она состоянии
     
  • 1.11, Аноним (11), 19:56, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не подскажут ли любезные знатоки как установить связь между гостем и хозяином (желательно со ссылкой на соответствующий кусочек документации) с помощью QEMU, или хотя бы libvirt?
     
     
  • 2.13, Аноним (13), 21:14, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +/
    в зависимости от задачи можно прокинуть порт (диапазон портов) с помощью hostfwd/guestfwd
    https://qemu.weilnetz.de/doc/qemu-doc.html#Network-options
    поднять мост или еще чего
    https://wiki.qemu.org/Documentation/Networking
    https://wiki.qemu.org/Documentation/Networking/NAT
     
     
  • 3.21, Вопроситель (?), 19:02, 26/04/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как раз то, что нужно!
    Спаси Вас Бог!
     
  • 2.15, Аноним (15), 21:47, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Через virt-maager, NAT связь будет доступна между гостем и хостом.
     
     
  • 3.22, Вопроситель (?), 19:02, 26/04/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо!
     

  • 1.12, Fracta1L (ok), 20:45, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    > в движке ускорения виртуализации HAX

    Ускорение НАХ!

     
     
  • 2.14, Аноним (14), 21:39, 24/04/2019 [^] [^^] [^^^] [ответить]  
  • +/
    И это правда пока модуля haxm нет в штатной поставке ядра.
     

  • 1.17, Аноним (17), 22:13, 24/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > в движке ускорения виртуализации HAX (Intel Hardware Accelerated Execution)

    не просто НАХ, а Интел НАХ!

     
     
  • 2.18, axredneck (?), 01:36, 25/04/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Тут, на Опеннете, есть такой юзер, зовут пох. А это, видимо, его брат.
     
     
  • 3.19, Минона (ok), 16:24, 25/04/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не брат -- аватар
     

  • 1.20, Аноним (20), 17:59, 26/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    хто має посилання з ретельним описом як запустити armbian на x86 ?
    буду вдячний.
     
     
  • 2.23, Cradle (?), 19:36, 26/04/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а вам на каком уровне железо эмулировать нужно? Потому что чистом виде он скорее всего не пойдет, но если взять ядро от дебиана то наверное даже запустится, консоль будет. Посмотрю на выходных, напишу потом.
     

  • 1.24, Прохожий (??), 07:15, 27/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я правильно понял, что этот эмулятор позволяет запустить 64-bit программу на 32-bit ?
     
  • 1.25, burjui (ok), 11:53, 29/04/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну, как говорится, не было печали - апдейтов накачали. Поломали захват клавиатуры. Сначала не мог понять, с какого перепугу в R6: Siege стали "залипать" клавиши WSAD, потом проверил в xev через Xming - оказалось, залипают и вне игры. Вернулся на Qemu 3.1 - полёт нормальный.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру