Lansarea emulatorului QEMU 4.2

Prezentat lansarea proiectului QEMU 4.2. Ca emulator, QEMU permite rularea unei aplicații compilate pentru o platformă hardware pe un sistem cu o arhitectură complet diferită, de exemplu, executarea unei aplicații pentru ARM pe un PC compatibil x86. În modul de virtualizare, performanța executării codului într-un mediu izolat este apropiată de cea a unui sistem nativ datorită executării directe a instrucțiunilor pe CPU și folosirii hipervizorului Xen sau a modulului KVM.

Proiectul a fost inițial creat de Fabrice Bellard pentru a permite rularea fișierelor executabile Linux compilate pentru platforma x86 pe arhitecturi diferite de x86. De-a lungul anilor de dezvoltare, a fost adăugată suport pentru emularea completă a 14 arhitecturi hardware, numărul dispozitivelor hardware emulate depășind 400. La pregătirea versiunii 4.2 au fost aduse peste 2200 de modificări de la 198 de dezvoltatori.

Principalele îmbunătățiri, adăugate în QEMU 4.2:

  • În generatorul de cod clasic TCG (Tiny Code Generator) a fost implementat suport pentru module de monitorizare a instrucțiunilor procesorului și a adreselor din memorie;
  • În driverul dispozitivelor bloc NBD (Network Block Device) a fost îmbunătățit procesul de gestionare a cererilor de copiere la citire (copy-on-read). Codul serverului NBD a fost optimizat pentru copierea imaginilor sparse (cu goluri). Au fost aduse îmbunătățiri generale în implementarea clientului și serverului NBD;
  • A fost crescută performanța criptării discurilor LUKS utilizând algoritmul AES-XTS;
  • În vfio-pci a fost adăugat suport pentru proprietatea "failover_pair_id" pentru simplificarea migrației dispozitivelor VFIO;
  • În virtio-mmio a fost adăugat suport pentru standardul virtio-compatible 2 și pentru mecanismul de cozi virtuale împachetate definit în specificația virtio 1.1 (virtqueue) pentru schimbul de date cu un dispozitiv virtual de intrare/ieșire în mod de grup;
  • În emulatorul arhitecturii x86 a fost adăugat un nou tip de mașini emulate "microvm", care utilizează virtio-mmio în loc de PCI pentru optimizarea performanței. A fost implementată posibilitatea de activare și dezactivare a VMX prin utilizarea flagurilor "-cpu". A fost adăugat suport pentru emularea extensiilor AVX512 BFloat16. A fost asigurat suport pentru noile modele de CPU Denverton (SoC server bazat pe Atom), Snowridge și Dhyana. A fost stabilizată suportul pentru macOS Hypervisor Framework ("-accel hvf");
  • Emulatorul arhitecturii ARM a adăugat suport pentru emularea SoC Aspeed AST2600 ("ast2600-evb"). A fost adăugat suport pentru tehnologia Semihosting 2.0 cu extensiile STDOUT_STDERR/EXIT_EXTENDED, care permite dispozitivului emulat să folosească stdout, stderr și stdin pentru a crea fișiere pe partea gazdei. În KVM a fost adăugată posibilitatea de a utiliza mai mult de 256 CPU și a fost asigurată suportul pentru instrucțiunile SIMD SVE. În mașinile virtuale de tip "virt" a fost implementat suport pentru conectarea la cald a memoriei. Performanța emulării a fost crescută folosind generatorul de cod TCG.
  • În emulatorul arhitecturii PowerPC a apărut posibilitatea emulării instrucțiilor POWER9 mffsce, mffscrn și mffscrni. În mașinile emulate "powernv" a fost adăugat suport pentru dispozitivele sistemului Homer și OCC SRAM;
  • În emulatorul arhitecturii RISC-V a fost adăugată opțiunea "-initrd" și posibilitatea de a vizualiza starea completă a arhitecturii în debugger;
  • În emulatorul arhitecturii s390 a fost implementat suportul pentru instrucțiunile IEP (Instruction Execution Protection);
  • În emulatorul arhitecturii 68k a fost adăugată o capacitate inițială de emulare a Macintosh Quadro 800 și a sistemelor clasice NeXTcube;
  • În emulatorul arhitecturii xtensa a fost adăugată un nou tip de mașini emulate "virt" și a fost implementat suportul pentru ABI call0 pentru emularea în spațiul utilizatorului.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster