Нашри эмулятори QEMU 4.2

муаррифӣ карда шуд нашри лоиҳа QEMU 4.2. Ҳамчун эмулятор, QEMU ба шумо имкон медиҳад, ки барномаи барои як платформаи сахтафзор тартибдодашударо дар система бо меъмории комилан дигар иҷро кунед, масалан, барномаи ARM-ро дар компютери x86 мувофиқ иҷро кунед. Дар реҷаи виртуализатсия дар QEMU, иҷрои иҷрои код дар муҳити ҷудошуда аз сабаби иҷрои мустақими дастурҳо дар CPU ва истифодаи гипервизор Xen ё модули KVM ба системаи аслӣ наздик аст.

Лоиҳа дар ибтидо аз ҷониби Фабрис Беллард барои фароҳам овардани қобилияти иҷро кардани файлҳои иҷрошавандаи Linux, ки барои платформаи x86 дар меъмории ғайри x86 тартиб дода шудаанд, сохта шудааст. Дар тӯли солҳои рушд, барои 14 меъмории сахтафзор дастгирии эмуляцияи пурра илова карда шуд, шумораи дастгоҳҳои сахтафзори тақлидшуда аз 400 гузашт. Ҳангоми омода кардани версияи 4.2 аз 2200 таҳиягар беш аз 198 тағйирот ворид карда шуд.

Калиди беҳбудиҳодар QEMU 4.2 илова карда шудааст:

  • В классическом генераторе кода TCG (Tiny Code Generator) реализована поддержка плагинов для мониторинга процессорных инструкций и адресов в памяти;
  • В драйвере блочных устройств NDB (Network Block Device) обеспечена более эффективная обработка запросов копирования при чтении (copy-on-read). Код NBD-сервера оптимизирован для копирования разрежённых образов (с пустотами). Внесены общие улучшения в реализацию клиента и сервера NBD;
  • Повышена производительность шифрования LUKS-дисков с использованием алгоритма AES-XTS;
  • В vfio-pci добавлена поддержка свойства «failover_pair_id» для упрощения миграции устройств VFIO;
  • В virtio-mmio добавлена поддержка стандарта virtio-compatible 2 и определённого в спецификации virtio 1.1 механизма упакованных виртуальных очередей (virtqueue) для обмена данными с виртуальным устройством ввода/вывода в пакетном режиме;
  • В эмулятор архитектуры x86 добавлен новый тип эмулируемых машин «microvm», использующих virtio-mmio вместо PCI для оптимизации производительности. Реализована возможность включения и выключения VMX через флаги «-cpu». Добавлена поддержка эмуляции расширений AVX512 BFloat16. Обеспечена поддержка новых моделей CPU Denverton (серверный SoC на базе Atom), Snowridge и Dhyana. Стабилизирована поддержка macOS Hypervisor Framework («-accel hvf»);
  • В эмулятор архитектуры ARM добавлена поддержка эмуляции SoC Aspeed AST2600 («ast2600-evb»). Добавлена поддержка технологии Semihosting 2.0 c расширениями STDOUT_STDERR/EXIT_EXTENDED, которая позволяет эмулируемому устройству использовать stdout, stderr и stdin для создания файлов на стороне хоста. В KVM добавлена возможность использования более 256 CPU и обеспечена поддержка SIMD-инструкций SVE. В виртуальных машинах с типом «виртуалӣ» реализована поддержка горячего подключения памяти. Увеличена производительность эмуляции с использованием генератора кода TCG.
  • В эмуляторе архитектуры PowerPC появилась возможность эмуляции POWER9-инструкций mffsce, mffscrn и mffscrni. В эмулируемых машинах «powernv» добавлена поддержка системных устройств Homer и OCC SRAM;
  • В эмуляторе архитектуры RISC-V добавлена опция «-initrd» и возможность просмотра полного состояния архитектуры в отладчике;
  • В эмуляторе архитектуры s390 реализована поддержка инструкций IEP (Instruction Execution Protection);
  • В эмулятор архитектуры 68k добавлена начальная возможность эмуляции Macintosh Quadro 800 и классических систем NeXTcube;
  • В эмуляторе архитектуры xtensa добавлен новый тип эмулируемых машин «virt» и реализована поддержка ABI call0 для эмуляции в пространстве пользователя.

Манбаъ: opennet.ru

Илова Эзоҳ