Paglabas ng QEMU 4.1 emulator

Ipinasa ni pagpapalabas ng proyekto QEMU 4.1. Bilang isang emulator, pinapayagan ka ng QEMU na magpatakbo ng isang program na pinagsama-sama para sa isang platform ng hardware sa isang system na may ganap na naiibang arkitektura, halimbawa, magpatakbo ng isang ARM application sa isang x86-compatible na PC. Sa virtualization mode sa QEMU, ang pagganap ng code execution sa isang nakahiwalay na kapaligiran ay malapit sa native system dahil sa direktang pagpapatupad ng mga tagubilin sa CPU at ang paggamit ng Xen hypervisor o KVM module.

Ang proyekto ay orihinal na nilikha ni Fabrice Bellard upang magbigay ng kakayahang magpatakbo ng mga Linux executable na pinagsama-sama para sa x86 platform sa mga hindi x86 na arkitektura. Sa paglipas ng mga taon ng pag-unlad, ang suporta para sa buong pagtulad ay idinagdag para sa 14 na arkitektura ng hardware, ang bilang ng mga emulated na hardware na aparato ay lumampas sa 400. Sa paghahanda ng bersyon 4.1, higit sa 2000 mga pagbabago ang ginawa mula sa 276 na mga developer.

Susi mga pagpapabutiidinagdag sa QEMU 4.1:

  • В эмулятор архитектуры x86 добавлена поддержка моделей CPU Hygon Dhyana и Intel SnowRidge. Добавлена эмуляция расширения RDRAND (аппаратный генератор псевдослучайных чисел). Добавлены флаги
    md-clear и mds-no для управления защитой от атак MDS (Microarchitectural Data Sampling) на процессоры Intel. Добавлена возможность определения топологий интегральных схем при помощи флага «-smp …,dies=». Реализовано версионирование для всех моделей CPU x86;

  • Блочный драйвер SSH переведён с использования libssh2 sa libsh;
  • В драйвер virtio-gpu (виртуальный GPU, развиваемый в рамках проекта Virgil) добавлена поддержка выноса операций отрисовки 2D/3D во внешний процесс vhost-user (например, vhost-user-gpu);
  • В эмулятор архитектуры ARM добавлена поддержка расширения ARMv8.5-RNG для генерации псевдослучайных чисел. Реализована поддержка эмуляции FPU для чипов семейства Cortex-M и решены проблемы с эмуляцией FPU для Cortex-R5F. Предложена новая система настройки опций сборки, оформленная в стиле Kconfig. Для SoC Exynos4210 добавлена поддержка DMA-контроллеров PL330;
  • В эмуляторе архитектуры MIPS улучшена поддержка инструкций MSA ASE при использовании порядка следования байт big-endian и приведена в соответствие с эталонным оборудованием обработка случаев деления на ноль. Увеличена производительность эмуляции инструкций MSA для целочисленных вычислений и операций перестановки;
  • В эмуляторе архитектуры PowerPC появилась поддержка проброса к GPU NVIDIA V100/NVLink2 при помощи VFIO. Для pseries реализовано ускорение эмуляции контроллера прерываний XIVE и добавлена поддержка горячего подключения PCI мостов. Внесены оптимизации в эмуляцию векторных инструкций (Altivec/VSX);
  • В эмулятор архитектуры RISC-V добавлена новая модель оборудования — «spike». Добавлена поддержка ISA 1.11.0. Улучшен 32-разрядный ABI системных вызовов, расширена обработка недопустимых инструкций и улучшен встроенный отладчик. Добавлена поддержка топологии CPU в device tree;
  • В эмулятор архитектуры s390 добавлена поддержка эмуляции всех векторных инструкций группы «Vector Facility» и добавлены дополнительные элементы для поддержки систем gen15 (в том числе добавлена поддержка AP Queue Interruption Facility для vfio-ap). Реализована поддержка BIOS для загрузки с ECKD DASD, привязанного к гостевой системе через vfio-ccw;
  • В эмуляторе архитектуры SPARC для систем sun4m решены проблемы с использованием флага «-vga none» для OpenBIOS;
  • В эмуляторе процессоров семейства Tensilica Xtensa реализованы опции для MPU (memory protection unit) и эксклюзивного доступа;
  • В команду «qemu-img convert» добавлена опция «—salvage» для отключения аварийного завершения работы процесса преобразования образа в случае возникновения ошибок ввода/вывода (например, можно применять для восстановления частично повреждённых файлов qcow2). В команде
    «qemu-img rebase» обеспечена работа, когда для входного файла пока не создан базовый (backing) файл;

  • Добавлена возможность перенаправления вывода, организованного с использованием технологии «semihosting» (позволяет эмулируемому устройству использовать stdout, stderr и stdin для создания файлов на стороне хоста), в бэкенд chardev («-semihosting-config enable=on,target=native,chardev=[ID]»);
  • В блочном драйвере VMDK добавлена поддержка субформата seSparse в режиме только для чтения;
  • В драйвере эмуляции GPIO добавлена поддержка GPIO-контроллера SiFive.

Pinagmulan: opennet.ru

Magdagdag ng komento