
Le 21 avril, une importante sortie de QEMU version 11.0 a eu lieu — un programme libre open source pour l'émulation du matériel de diverses plateformes.
La mise à jour contient :
- un nouveau modèle de processeur pour Intel Diamond Rapids ;
- un nouvel accélérateur « nitro » pour exécuter des Nitro Enclaves (permet d'exécuter des environnements isolés (enclaves) directement via QEMU sur des hôtes prenant en charge la technologie Nitro, sans avoir à utiliser les outils standard d'AWS) ;
- le support de la virtualisation CET sur KVM ;
- le support des pilotes contextuels intégrés pour le pilote graphique virtio-gpu (une nouvelle technologie de passthrough d'accélération graphique dans une machine virtuelle, qui rend le rendu graphique presque aussi rapide que sur le véritable matériel (jusqu'à 99 % de la performance de l'hôte) ;
- le support des commandes de configuration du réseau local dans le BMC (Baseboard Management Controller) simulé ;
- pour RISC-V, le support des extensions Zilsd et Zclsd a été ajouté, ainsi que le support de l'extension RISC-V ZALASR et du support de l'extension Smpmpmt ;
- pour PowerPC, le support des snapshots pour plusieurs périphériques a été ajouté, et pour LoongArch, le support de la migration PMU pour KVM a été ajouté ;
- plusieurs changements ARM, tels que la possibilité d'exécuter des fichiers binaires utilisant l'ancien ABI OABI, le support des fonctionnalités FEAT_ASID2 et FEAT_E2H0 de l'ARMv9, l'accélération SMMUv3 IOMMU et le support TCG pour l'émulation de processeurs avec SME, mais sans SVE ;
- le service de support ARM a reçu une nouvelle propriété « virtio-mmio-transports », permettant de ne plus fournir au client des moyens virtio-mmio inutilisés, ainsi que le support de la propriété « kvm-psci-version », permettant de spécifier quelle version de PSCI KVM doit être fournie au client ;
- HPPA a inclus le support d'un serveur 64 bits A400 et du soutien d'extensions de firmware 64 bits PAT pour SeaBIOS-hppa version 22, le support de processeurs 40 et 44 bits avec un espace d'adresses physiques dans SeaBIOS-hppa version 23 et une initialisation complète d'Astro PCI dans SeaBIOS-hppa version 24 ;
- également pour HPPA, le support de la version 64 bits d'HP-UX a été amélioré et un support initial pour des ordinateurs multicœurs a été ajouté, le support de l'émulation de processeurs 64 bits avec un espace d'adresses physiques de 40 et 44 bits a été ajouté, le support GDB 64 bits a été ajouté et le support TOC sur des ordinateurs 64 bits a été ajouté ;
- WHPX a obtenu un code d'émulation amélioré et plus rapide ainsi que le support de x2apic et vapic ;
- Pour MSHV, le noyau Linux version 6.19 est maintenant requis.
- Le processus de « synchronisation sale » (dirty sync — lorsque la machine virtuelle passe d'un serveur physique à un autre sans interruption) a été optimisé pour les blocs RAM non alignés (ramblocks) avec KVM.
- Le pilote de bloc NFS a obtenu le support de libnfs version 6.
- Et bien d'autres choses…
Parmi les autres changements, cette version a ajouté tous les CSR disponibles dans les « registres d'information », de la documentation sur l'accélération « riscv-aia », le support du processeur MIPS P8700, et la prise en charge du démarrage à partir d'appareils virtio-blk-pci sur IBM zSystems et LinuxONE (s390x).
Pour l'émulation du mode utilisateur, QEMU 11.0 offre le support de termios2 (TCGETS2, TCSETS2, TCSETSW2, TCSETSF2 ioctls), une amélioration de l'affichage des chaînes mremap() et un appel système statx() mis à jour. Enfin, mais non des moindres : cette version a implémenté un itinéraire réseau invité pour Windows.
QEMU inclut l'émulation des processeurs Intel x86 et des périphériques d'entrée-sortie. Il peut émuler 80386, 80486, Pentium, Pentium Pro, AMD64 et d'autres processeurs compatibles x86 ; ARM, MIPS, RISC-V, PowerPC, SPARC, SPARC64 et partiellement m68k. Il fonctionne sur Syllable, FreeBSD, OpenBSD, FreeDOS, Linux, Windows 9x, Windows 2000, Mac OS X, QNX, Android, etc. Pour plus de détails, consultez la page Wikipédia et la page du projet.
Source : linux.org.ru
