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

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

Першапачаткова праект быў створаны Фабрысам Беларам (Fabrice Bellard) з мэтай забеспячэння магчымасці запуску сабраных для платформы x86 выкананых файлаў Linux на архітэктурах, адрозных ад x86. За гады распрацоўкі была дададзена падтрымка поўнай эмуляцыі для 14 апаратных архітэктур, колькасць эмуляваных апаратных прылад перавысіла 400. Пры падрыхтоўцы версіі 6.1 унесена больш за 3000 змяненняў ад 221 распрацоўшчыка.

Ключавыя паляпшэнні, дададзеныя ў QEMU 6.1:

  • У QMP (QEMU Machine Protocol) дададзена каманда "blockdev-reopen" для змены налад ужо створанай блокавай прылады.
  • У якасці прыярытэтнага криптодрайвера задзейнічаны gnutls, які апярэджвае іншыя драйверы па прадукцыйнасці. Раней які прапаноўваўся па змаўчанні драйвер на аснове libgcrypt перамешчаны ў разрад опцый, а драйвер на базе nettle пакінуты як запасны варыянт, які ўжываецца пры адсутнасці GnuTLS і Libgcrypt.
  • У эмулятар I2C дададзеная падтрымка PMBus і I2C-мультыплексараў (pca9546, pca9548).
  • Па змаўчанні ўключаная падтрымка плагінаў да класічнага генератара кода TCG (Tiny Code Generator). Дададзеныя новыя плагіны execlog (часопіс выканання) і cache modelling (сімуляцыя паводзін кэша L1 у CPU).
  • У эмулятар ARM дададзеная падтрымка поплаткаў на базе чыпаў Aspeed (rainier-bmc, quanta-q7l1), npcm7xx (quanta-gbs-bmc) і Cortex-M3 (stm32vldiscovery). Дададзена падтрымка апаратных рухавікоў шыфравання і хэшавання, якія прадстаўляюцца ў чыпах Aspeed. Дададзена падтрымка эмуляцыі інструкцый SVE2 (уключаючы bfloat16), аператараў для множання матрыц і каманд скіду буфераў асацыятыўнай трансляцыі (TLB).
  • У эмулятары архітэктуры PowerPC для эмуляваных машын «pseries» дададзеная падтрымка вызначэння збояў пры гарачым падлучэнні прылад у новых гасцявых асяроддзі, падвышаны ліміт на лік CPU і рэалізаваная эмуляцыя некаторых інструкцый, спецыфічных для працэсараў POWER10. Дададзена падтрымка поплаткаў на базе чыпаў Genesi / bPlan Pegasos II (pegasos2).
  • У эмулятары RISC-V рэалізавана падтрымка платформы OpenTitan і віртуальнага GPU virtio-vga (на базе virgl).
  • У эмулятар s390 дададзеная падтрымка 16 пакаленні CPU і вектарных пашырэнняў.
  • У эмулятар x86 дададзеная падтрымка новых мадэляў CPU Intel (Skylake-Client-v4, Skylake-Server-v5, Cascadelake-Server-v5, Cooperlake-v2, Icelake-Client-v3, Icelake-Server-v5, Denverton-v3, Snowridge- v3, Dhyana-v2), у якіх рэалізавана інструкцыя XSAVES. У эмулятары чыпсэта Q35 (ICH9) рэалізавана падтрымка гарачага падлучэння PCI-прылад. Палепшана эмуляцыя пашырэнняў віртуалізацыі, якія прадстаўляюцца ў працэсарах AMD. Дададзена опцыя bus-lock-ratelimit для абмежавання інтэнсіўнасці блакавання шыны гасцявой сістэмай.
  • Дададзена падтрымка выкарыстання ў якасці паскаральніка для гіпервізара NVMM, які развіваецца праектам NetBSD.
  • У GUI падтрымка аўтэнтыфікацыі па паролі пры выкарыстанні пратаколу VNC зараз уключаецца толькі пры зборцы з вонкавым крыптаграфічным бэкэндам (gnutls, libgcrypt або nettle).

Крыніца: opennet.ru

Дадаць каментар