Sortie de l'émulateur QEMU 9.0.0

La version 9.0 du projet QEMU a été publiée. En tant qu'émulateur, QEMU permet d'exécuter des programmes compilés pour une plateforme matérielle sur un systÚme avec une architecture complÚtement différente, par exemple, d'exécuter une application pour ARM sur un PC compatible x86. En mode virtualisation, la performance d'exécution du code dans un environnement isolé est proche de celle d'un systÚme matériel grùce à l'exécution directe des instructions sur le CPU et à l'utilisation d'un hyperviseur Xen ou du module KVM sous Linux, ou du module NVMM sous NetBSD.

Le projet a été initialement créé par Fabrice Bellard dans le but de permettre l'exécution de fichiers exécutables Linux compilés pour l'architecture x86 sur des architectures différentes de x86. Au fil des années, le projet a bénéficié de la prise en charge complÚte de 14 architectures matérielles, et le nombre de périphériques matériels émulés a dépassé 400. La version 9.0 a été préparée avec plus de 2700 modifications provenant de 220 développeurs.

Améliorations clés ajoutées dans QEMU 9.0 :

  • Dans le pilote virtio-blk, qui fournit un pĂ©riphĂ©rique de bloc virtuel pour machines virtuelles, le support de systĂšme de files d'attente multilevel (multiqueue) a Ă©tĂ© ajoutĂ©, permettant de diviser les files d'attente pour diffĂ©rents pĂ©riphĂ©riques de bloc afin d'assurer un accĂšs multi-thread sur les systĂšmes multi-cƓurs (diffĂ©rentes files d'attente d'un mĂȘme disque peuvent ĂȘtre traitĂ©es par des fils d'entrĂ©e/sortie diffĂ©rents).
  • Dans le pĂ©riphĂ©rique de bloc usb-storage, le support pour les propriĂ©tĂ©s ‘backend_defaults’, ‘logical_block_size’, ‘physical_block_size’, ‘min_io_size’, ‘opt_io_size’ et ‘discard_granularity’ a Ă©tĂ© ajoutĂ©.
  • Dans la bibliothĂšque gdbstub, destinĂ©e au dĂ©bogage Ă  distance dans GDB avec le protocole RSP (Remote Serial Protocol), le mode fork-follow a Ă©tĂ© ajoutĂ©, ainsi que l'opĂ©ration siginfo:read et l'interception des appels systĂšme dans l'espace utilisateur.
  • Les backends de prĂ©allocation de mĂ©moire ont Ă©tĂ© adaptĂ©s pour fonctionner en mode multithread et peuvent dĂ©sormais traiter simultanĂ©ment des demandes provenant de plusieurs fils.
  • Dans les outils de migration des machines virtuelles, un mode « mapped-ram » a Ă©tĂ© ajoutĂ©, amĂ©liorant l'efficacitĂ© de la crĂ©ation de snapshots des machines virtuelles. La dĂ©tection de la page mĂ©moire nulle a Ă©tĂ© amĂ©liorĂ©e, permettant d'accĂ©lĂ©rer considĂ©rablement la migration des machines virtuelles inactives lorsque le systĂšme prend en charge multifd. Lors de la migration basĂ©e sur VFIO (Virtual Function I/O), le support pour la reprise Ă  partir d'un Ă©tat sauvegardĂ© (checkpoint-restart) a Ă©tĂ© implĂ©mentĂ©.
  • RĂ©implĂ©mentation du dispositif ESP SCSI (am53c974/dc390).
  • Ajout du support de l'algorithme de chiffrement SM4 et possibilitĂ© de l'utiliser dans le pilote de bloc ‘luks’.
  • Le pilote ‘luks’ prend en charge la crĂ©ation et l'utilisation de fichiers avec des en-tĂȘtes LUKS enregistrĂ©s.
  • L'Ă©mulateur d'architecture ARM prend en charge les cartes L475E-IOT01A IoT, mp3-an536 (MPS3 avec le firmware AN536) et raspi4b (Raspberry Pi 4 ModĂšle B). Ajout du support de l'Ă©mulation des extensions de processeur ECV (Enhanced Counter Virtualization), NV (Nested Virtualization) et NV2 (Enhanced Nested Virtualization). Les capacitĂ©s des Ă©mulateurs de cartes Freescale i.MX6, Allwinner R40, Bananapi, Raspberry Pi, npcm7xx et virt ont Ă©tĂ© Ă©tendues.
  • L'Ă©mulateur d'architecture RISC-V ajoute le support des extensions d'architecture du jeu d'instructions Zacas, amocas, RVA22, Zaamo, Zalrsc et Ztso. des machines virtuelles RISC-V assure la prise en charge de SMBIOS. Le support ACPI a Ă©tĂ© implĂ©mentĂ© pour SRAT, SLIT, AIA et PLIC. La prise en charge des tables RHCT a Ă©tĂ© mise Ă  jour.
  • Dans l'Ă©mulateur d'architecture HPPA jusqu'Ă  la version 16, le firmware SeaBIOS-hppa a Ă©tĂ© mis Ă  jour. La taille maximale de la mĂ©moire a Ă©tĂ© augmentĂ©e de 3 Go Ă  3840 Mo. Ajout de la prise en charge de l'option ‘—nodefaults’.
  • Dans l'Ă©mulateur d'architecture LoongArch, le support de l'accĂ©lĂ©ration KVM a Ă©tĂ© ajoutĂ© et le support des extensions vectorielles du jeu d'instructions LSX/LASX a Ă©tĂ© implĂ©mentĂ©.
  • Dans l'Ă©mulateur d'architecture s390x, le support des instructions CVDG, CVB, CVBY et CVBG a Ă©tĂ© ajoutĂ©. L'Ă©mulation LAE (Load Address Extended) a Ă©tĂ© amĂ©liorĂ©e.
  • Dans l'Ă©mulateur d'architecture 68k, un dispositif nubus-virtio-mmio a Ă©tĂ© ajoutĂ©, permettant d'accĂ©der aux dispositifs virtio depuis les machines q800.
  • Une compilation avec le drapeau ‘-fzero-call-used-regs’ a Ă©tĂ© assurĂ©e, permettant de se protĂ©ger contre les fuites d'informations des fonctions et de rĂ©duire le nombre de blocs susceptibles de construire des gadgets ROP (Return-Oriented Programming) dans les exploits. Une compilation avec le drapeau ‘-ftrivial-auto-var-init=zero’ a Ă©galement Ă©tĂ© ajoutĂ©e pour une initialisation automatique Ă  zĂ©ro de toutes les variables stockĂ©es sur la pile.
  • Pour exĂ©cuter QEMU avec KVM, un noyau Linux 4.4 au minimum est dĂ©sormais requis. Pour les hĂŽtes ARM, ce seuil est prĂ©vu pour ĂȘtre Ă©levĂ© Ă  la version 4.19 Ă  l'avenir. Le support des systĂšmes d'exploitation Windows 32 bits en tant que systĂšme d'exploitation hĂŽte a Ă©tĂ© abandonnĂ©.
  • Ajout du support d'OpenBSD 7.4.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster