Sortie de l'émulateur QEMU 7.1

La version du projet QEMU 7.1 est présentée. En tant qu'émulateur, QEMU vous permet d'exécuter un programme conçu pour une plate-forme matérielle sur un système avec une architecture complètement différente, par exemple, exécutez une application ARM sur un PC compatible x86. En mode virtualisation dans QEMU, les performances d'exécution de code dans un environnement isolé sont proches d'un système matériel du fait de l'exécution directe des instructions sur le CPU et de l'utilisation de l'hyperviseur Xen ou du module KVM.

Le projet a été créé à l'origine par Fabrice Bellard pour permettre aux exécutables Linux conçus pour la plate-forme x86 de s'exécuter sur des architectures non x86. Au fil des années de développement, une prise en charge complète de l'émulation a été ajoutée pour 14 architectures matérielles, le nombre de périphériques matériels émulés a dépassé 400. En préparation de la version 7.1, plus de 2800 modifications ont été apportées par 238 développeurs.

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

  • Sur la plateforme Linux, l'option zéro copie-envoi est implémentée, ce qui permet d'organiser le transfert des pages mémoire lors de la migration en direct sans mise en mémoire tampon intermédiaire.
  • QMP (QEMU Machine Protocol) a ajouté la possibilité d'utiliser la commande block-export-add pour exporter des images NBD avec des données de page à l'état « sale ». De nouvelles commandes « query-stats » et « query-stats-schema » ont également été ajoutées pour interroger les statistiques de divers sous-systèmes QEMU.
  • L'agent invité a amélioré la prise en charge de la plate-forme Solaris et ajouté de nouvelles commandes « guest-get-diskstats » et « guest-get-cpustats » pour afficher l'état du disque et du processeur. Ajout de la sortie d'informations de NVMe SMART vers la commande « guest-get-disks » et de la sortie d'informations sur le type de bus NVMe vers la commande « guest-get-fsinfo ».
  • Ajout d'un nouvel émulateur LoongArch avec prise en charge de la variante 64 bits de l'architecture du jeu d'instructions LoongArch (LA64). L'émulateur prend en charge les processeurs Loongson 3 5000 et les northbridges Loongson 7A1000.
  • L'émulateur ARM implémente de nouveaux types de machines émulées : Aspeed AST1030 SoC, Qaulcomm et AST2600/AST1030 (fby35). Ajout de la prise en charge de l'émulation des processeurs Cortex-A76 et Neoverse-N1, ainsi que des extensions de processeur SME (Scalable Matrix Extensions), RAS (Reliability, Availability, Serviceability) et des commandes pour bloquer les fuites du cache interne lors de l'exécution spéculative d'instructions sur le CPU. Pour les machines « virt », l'émulation du contrôleur d'interruption GICv4 a été implémentée.
  • Dans l'émulateur d'architecture x86 pour KVM, la prise en charge de la virtualisation du mécanisme de traçage LBR (Last Branch Record) a été ajoutée.
  • L'émulateur d'architecture HPPA propose un nouveau firmware basé sur SeaBIOS v6, qui prend en charge l'utilisation d'un clavier PS/2 dans le menu de démarrage. Émulation de port série améliorée. Ajout de polices de console STI supplémentaires.
  • L'émulateur d'architecture MIPS pour les cartes Nios2 (-machine 10m50-ghrd) implémente l'émulation d'un contrôleur d'interruption vectoriel et d'un ensemble fantôme de registres. Gestion améliorée des exceptions.
  • L'émulateur d'architecture OpenRISC pour la machine « or1k-sim » a ajouté la possibilité d'utiliser jusqu'à 4 appareils UART 16550A.
  • L'émulateur d'architecture RISC-V a ajouté la prise en charge des nouvelles extensions de jeu d'instructions (ISA) définies dans la spécification 1.12.0, ainsi qu'une prise en charge supplémentaire de l'extension Sdtrig et une prise en charge améliorée des instructions vectorielles. Capacités de débogage améliorées. La prise en charge du TPM (Trusted Platform Module) a été ajoutée à la machine émulée « virt », et la prise en charge d'Ibex SPI a été ajoutée à la machine « OpenTitan ».
  • L'émulateur d'architecture 390x prend en charge les extensions VEF 2 (Vector-Enhancements Facility 2). Le BIOS s390-ccw offre la possibilité de démarrer à partir de disques avec une taille de secteur autre que 512 octets.
  • L'émulateur d'architecture Xtensa a ajouté la prise en charge des noyaux lx106 et des codes objet pour les tests de cache.

Source: opennet.ru

Ajouter un commentaire