QEMU 4.0 emulyatorining chiqarilishi

Shakllangan loyiha chiqarilishi QEMU 4.0. Emulator sifatida QEMU butunlay boshqa arxitekturaga ega tizimda bitta apparat platformasi uchun tuzilgan dasturni ishga tushirishga imkon beradi, masalan, x86-ga mos keluvchi kompyuterda ARM ilovasini ishga tushiradi. QEMU-da virtualizatsiya rejimida, protsessorda ko'rsatmalarning to'g'ridan-to'g'ri bajarilishi va Xen gipervisor yoki KVM modulidan foydalanish tufayli izolyatsiya qilingan muhitda kodning bajarilishi mahalliy tizimga yaqin.

Loyiha dastlab Fabrice Bellard tomonidan x86 platformasi uchun tuzilgan Linux bajariladigan fayllarni x86 bo'lmagan arxitekturalarda ishga tushirish qobiliyatini ta'minlash uchun yaratilgan. Rivojlanish yillari davomida 14 ta apparat arxitekturasi uchun toʻliq emulyatsiyani qoʻllab-quvvatlash qoʻshildi, emulyatsiya qilingan apparat qurilmalari soni 400 dan oshdi. 4.0 versiyasini tayyorlashda 3100 ta dasturchi tomonidan 220 dan ortiq oʻzgartirishlar kiritildi.

Kalit yaxshilanishlarQEMU 4.0 da qo'shilgan:

  • ARM arxitektura emulyatoriga ARMv8+ yoʻriqnoma kengaytmalarini qoʻllab-quvvatlash qoʻshildi: SB, PredInv, HPD, LOR, FHM, AA32HPD,
    PAuth, JSConv, CondM, FRINT va BTI. Musca va MPS2 platalarini taqlid qilish uchun qo'shimcha yordam. Yaxshilangan ARM PMU (Power Management Unit) emulyatsiyasi. Platformaga fazilat 255 Gb dan ortiq operativ xotiradan foydalanish va "noload" turi bilan yuklash tasvirlarini qo'llab-quvvatlash imkoniyati qo'shildi;

  • Virtualizatsiya tezlashtirish dvigatelidagi x86 arxitektura emulyatorida HAX (Intel Hardware Accelerated Execution) Linux va NetBSD (ilgari faqat Darvin platformasi qoʻllab-quvvatlanar edi) kabi POSIX-mos keladigan xostlar uchun qoʻshimcha qoʻllab-quvvatladi. Asosiy PCIe portlari uchun Q35 chipset emulyatorida (ICH9) PCIe 16 spetsifikatsiyasida belgilangan maksimal tezlik (32GT/s) va ulanish liniyalari soni (x4.0) endi ixtiyoriy ravishda e’lon qilinishi mumkin (moslikni ta’minlash uchun 2.5GT QEMU mashinalarining eski turlari uchun sukut bo'yicha o'rnatilgan /s va x1). Xen PVH tasvirlarini "-yadro" opsiyasi bilan yuklash mumkin;
  • MIPS arxitektura emulyatori klassik TCG (Tiny Code Generator) kod generatoridan foydalangan holda ko'p tarmoqli emulyatsiyani qo'llab-quvvatladi. Shuningdek, CPU I7200 (nanoMIPS32 ISA) va I6500 (MIPS64R6 ISA) emulyatsiyasini qo'llab-quvvatlash, QMP (QEMU Management Protocol) yordamida CPU tipidagi so'rovlarni qayta ishlash qobiliyati, SAARI va SAAR konfiguratsiya registrlarini qo'llab-quvvatlash qo'shildi. Fulong 2E tipidagi virtual mashinalarning ishlashi yaxshilandi. Interthread Communication Unit dasturining yangilangan ilovasi;
  • PowerPC arxitektura emulyatorida XIVE uzilish kontrolleriga taqlid qilishni qo'llab-quvvatlash qo'shildi, POWER9 qo'llab-quvvatlash kengaytirildi va P seriyali uchun PCI xost ko'priklarini (PHB, PCI xost ko'prigi) hot-plug'lash imkoniyati qo'shildi. Spectre va Meltdown hujumlaridan himoya qilish sukut bo'yicha yoqilgan;
  • RISC-V arxitektura emulyatoriga PCI va USB emulyatsiyasini qo'llab-quvvatlash qo'shildi. O'rnatilgan disk raskadrovka serveri (gdbserver) endi XML fayllarida registrlar ro'yxatini belgilashni qo'llab-quvvatlaydi. TSR, TW va TVM mstatus maydonlari uchun qo'shimcha yordam;
  • S390 arxitektura emulyatori z14 GA 2 protsessor modelini qo‘llab-quvvatlashni, shuningdek, suzuvchi nuqta va vektor operatsiyalari uchun ko‘rsatmalar kengaytmalarini taqlid qilishni qo‘llab-quvvatladi. vfio-apga qurilmalarni issiq ulash imkoniyati qo'shildi;
  • Tensilica Xtensa oilaviy protsessor emulyatori Linux uchun SMP-ni qo'llab-quvvatlashni yaxshiladi va FLIX (Moslashuvchan uzunlikdagi ko'rsatmalar kengaytmasi) uchun qo'shimcha qo'llab-quvvatladi;
  • QEMU GTK interfeysiga o'xshash dizaynga ega Spice masofaviy kirish mijozining versiyasini sozlash va ishga tushirish uchun grafik interfeysga "-display spice-app" opsiyasi qo'shildi;
  • VNC serverini amalga oshirish uchun tls-authz/sassl-authz opsiyalaridan foydalangan holda kirishni boshqarish uchun qo'shimcha yordam;
  • QMP (QEMU Management Protocol) markazlashtirilgan/tashqi (Out-of-band) buyruqlar bajarilishini qo‘llab-quvvatlashni qo‘shdi va blokli qurilmalar bilan ishlash uchun qo‘shimcha buyruqlarni amalga oshirdi;
  • Qo'llab-quvvatlanadigan mdevlar (Intel vGPUs) uchun VFIO-ga EDID interfeysi ilovasi qo'shildi, bu sizga xres va yres opsiyalari yordamida ekran o'lchamlarini o'zgartirish imkonini beradi;
  • Xen uchun yangi "xen-disk" qurilmasi qo'shildi, u mustaqil ravishda Xen PV uchun disk backendini yaratishi mumkin (xenstore-ga kirmasdan). Xen PV disk orqa qismining ishlashi oshirildi va disk hajmini o'zgartirish imkoniyati qo'shildi;
  • Tarmoq bloklari qurilmalarida diagnostika va kuzatuv imkoniyatlari kengaytirildi va muammoli NBD server ilovalari bilan mijozning muvofiqligi yaxshilandi. Qemu-nbd-ga “--bitmap”, “--list” va “--tls-authz” opsiyalari qo‘shildi;
  • Emulyatsiya qilingan IDE/qurilma orqali PCI IDE rejimini qo'llab-quvvatlash qo'shildi;
  • Dmg tasvirlarini siqish uchun lzfse algoritmidan foydalanish uchun qo'shimcha yordam. Qcow2 formati uchun tashqi ma'lumotlar fayllarini ulash uchun yordam qo'shildi. qcow2 paketini ochish operatsiyalari alohida ipga o'tkaziladi. Vmdk tasvirlarida "blockdev-create" operatsiyasini qo'llab-quvvatlash qo'shildi;
  • virtio-blk blok qurilmasi DISCARD (bloklarning chiqarilishi haqida ma'lumot berish) va WRITE_ZEROES (mantiqiy bloklar qatorini nolga solish) operatsiyalarini qo'llab-quvvatlashni qo'shdi;
  • pvrdma qurilmasi RDMA Management Datagram xizmatlarini (MAD) qo'llab-quvvatlaydi;
  • Taqdim etilgan o'zgartirish, orqaga qarab muvofiqlikni buzish. Misol uchun, "-fsdev" va "-virtfs" da "tutqich" opsiyasi o'rniga "mahalliy" yoki "proksi" opsiyalaridan foydalanishingiz kerak. “-virtioconsol” (“-device virtconsole” bilan almashtirildi), “-no-frame”, “-clock”, “-enable-hax” (“-accel hax” bilan almashtirildi) opsiyalari olib tashlandi. O'chirilgan qurilma "ivshmem" ("ivshmem-doorbell" va "ivshmem-plain" dan foydalanish kerak). SDL1.2 bilan qurishni qo'llab-quvvatlash to'xtatildi (siz SDL2 dan foydalanishingiz kerak).

Manba: opennet.ru

a Izoh qo'shish