Sortie de l'émulateur QEMU 4.2

Présenté version du projet QEMU 4.2. En tant qu'émulateur, QEMU permet d'exécuter un programme compilé 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 de virtualisation, la performance d'exécution du code dans un environnement isolé est proche de celle d'un système natif grâce à l'exécution directe des instructions sur le CPU et à l'utilisation de l'hyperviseur Xen ou du module KVM.

À l'origine, le projet a été créé par Fabrice Bellard dans le but de permettre l'exécution de fichiers exécutables Linux compilés pour la plateforme x86 sur des architectures autres que x86. Au fil des années, le développement a ajouté le support de l'émulation complète pour 14 architectures matérielles et le nombre de dispositifs matériels émulés a dépassé 400. Plus de 2200 modifications ont été apportées par 198 développeurs en préparation de la version 4.2.

Améliorations clés améliorations, ajoutées dans QEMU 4.2 :

  • Dans le générateur de code classique TCG (Tiny Code Generator), le support des plug-ins pour le suivi des instructions processeur et des adresses mémoire a été mis en œuvre ;
  • Dans le pilote des dispositifs de blocs NBD (Network Block Device), le traitement des requêtes de copie lors de la lecture (copy-on-read) a été amélioré. Le code du serveur NBD a été optimisé pour la copie d'images éparses (avec des trous). Des améliorations générales ont été apportées à l'implémentation du client et du serveur NBD ;
  • Les performances du chiffrement des disques LUKS utilisant l'algorithme AES-XTS ont été améliorées ;
  • Dans vfio-pci, le support de la propriété « failover_pair_id » a été ajouté pour faciliter la migration des dispositifs VFIO ;
  • Dans virtio-mmio, le support de la norme virtio-compatible 2 et du mécanisme de file d'attente virtuelle empaquetée (virtqueue) défini dans la spécification virtio 1.1 pour l'échange de données avec un dispositif d'entrée/sortie virtuel en mode par lots a été ajouté ;
  • Dans l'émulateur d'architecture x86, un nouveau type de machines émulées « microvm », utilisant virtio-mmio au lieu de PCI pour optimiser les performances, a été ajouté. La possibilité d'activer et de désactiver VMX via les drapeaux « -cpu » a été mise en œuvre. Le support de l'émulation des extensions AVX512 BFloat16 a été ajouté. Le support des nouveaux modèles CPU Denverton (SoC serveur basé sur Atom), Snowridge et Dhyana a été assuré. Le support du macOS Hypervisor Framework (« -accel hvf ») a été stabilisé ;
  • Dans l'émulateur d'architecture ARM, le support de l'émulation du SoC Aspeed AST2600 (« ast2600-evb ») a été ajouté. Le support de la technologie Semihosting 2.0 avec des extensions STDOUT_STDERR/EXIT_EXTENDED a été ajouté, permettant à l'appareil émulé d'utiliser stdout, stderr et stdin pour créer des fichiers côté hôte. Dans KVM, il est désormais possible d'utiliser plus de 256 CPU et le support des instructions SIMD SVE a été assuré. Dans les machines virtuelles de type «virt», le support de l'ajout à chaud de mémoire a été mis en œuvre. Les performances de l'émulation utilisant le générateur de code TCG ont été augmentées.
  • Dans l'émulateur de l'architecture PowerPC, il est désormais possible d'émuler les instructions POWER9 mffsce, mffscrn et mffscrni. Dans les machines émuleées « powernv », le support des périphériques système Homer et OCC SRAM a été ajouté.
  • Dans l'émulateur de l'architecture RISC-V, l'option « -initrd » a été ajoutée, ainsi que la possibilité de visualiser l'état complet de l'architecture dans le débogueur.
  • Dans l'émulateur de l'architecture s390, le support des instructions IEP (Instruction Execution Protection) a été mis en œuvre.
  • Dans l'émulateur de l'architecture 68k, une fonctionnalité initiale d'émulation du Macintosh Quadro 800 et des systèmes classiques NeXTcube a été ajoutée.
  • Dans l'émulateur de l'architecture Xtensa, un nouveau type de machines émuleées « virt » a été ajouté, et le support de l'ABI call0 pour l'émulation en espace utilisateur a été réalisé.

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