Sortie de l'émulateur QEMU 5.0

Introduit lancement du projet QEMU 5.0. En tant qu'émulateur, QEMU vous permet d'exécuter un programme compilé pour une plate-forme matérielle sur un système avec une architecture complètement différente, par exemple, d'exécuter 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 du 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.

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 5.0, plus de 2800 modifications ont été apportées par 232 développeurs.

Clé améliorationsajouté dans QEMU 5.0 :

  • La possibilité de transférer une partie du système de fichiers de l'environnement hôte vers le système invité à l'aide de virtiofsd. Le système invité peut monter un répertoire marqué pour l'exportation du côté du système hôte, ce qui simplifie grandement l'organisation de l'accès partagé aux répertoires dans les systèmes de virtualisation. Contrairement à l'utilisation de systèmes de fichiers réseau tels que NFS et virtio-9P, virtiofs vous permet d'atteindre des performances proches d'un système de fichiers local ;
  • support migration en direct de données provenant de processus externes à l'aide du QEMU D-Bus ;
  • Convivialité backends de mémoire pour assurer le fonctionnement de la RAM principale du système invité. Le backend est spécifié à l’aide de l’option « -machine memory-backend » ;
  • Nouveau filtre « compresser », qui peut être utilisé pour créer des sauvegardes d'images compressées ;
  • La commande « qemu-img Measure » peut désormais fonctionner avec les images LUKS, et l'option « --target-is-zero » a été ajoutée à la commande « qemu-img convert » pour ignorer la mise à zéro de l'image cible ;
  • Ajout d'un support expérimental pour le processus qemu-storage-daemon, donnant accès au niveau de bloc QEMU et aux commandes QMP, y compris l'exécution de périphériques de bloc et le serveur NBD intégré, sans avoir à exécuter une machine virtuelle complète ;
  • L'émulateur d'architecture ARM a ajouté la possibilité d'émuler les processeurs Cortex-M7 et prend en charge les cartes PC tacoma-bmc, Netduino Plus 2 et Orangepi. Ajout de la prise en charge des appareils vTPM et virtio-iommu sur les machines émulées « virt ». La possibilité d'utiliser les systèmes hôtes AArch32 pour exécuter des environnements invités KVM est obsolète. La prise en charge de l'émulation des fonctionnalités d'architecture suivantes a été implémentée :
    • ARMv8.1 : VHE, VMID16, PAN, PMU
    • ARMv8.2 : UAO, DCPoP, ATS1E1, TTCNP
    • ARMv8.3 : RCPC, CCIDX
    • ARMv8.4 : PMU, RCPC
  • Ajout de la prise en charge de la console graphique à l'émulateur d'architecture HPPA à l'aide du périphérique graphique HP Artist ;
  • Ajout de la prise en charge de l'instruction GINVT (Global Invalidation TLB) à l'émulateur d'architecture MIPS ;
  • L'émulation des outils d'accélération matérielle KVM pour l'exécution des systèmes invités a été ajoutée à l'émulateur d'architecture PowerPC pour les machines « powernv »
    KVM avec générateur de code TCG classique (Tiny Code Generator). Pour émuler la mémoire persistante, la prise en charge des NVDIMM reflétée dans le fichier a été ajoutée. Pour les machines « pseries », le besoin de redémarrer a été supprimé pour coordonner le fonctionnement des contrôleurs d'interruption XIVE/XICS en mode « ic-mode=dual » ;

  • L'émulateur d'architecture RISC-V pour les cartes « virt » et « sifive_u » prend en charge les pilotes syscon Linux standard pour la gestion de l'alimentation et du redémarrage. La prise en charge de Goldfish RTC a été ajoutée pour la carte « virt ». Ajout de l'implémentation expérimentale d'extensions d'hyperviseur ;
  • La prise en charge de l'AIS (Adapter Interrupt Suppression) a été ajoutée à l'émulateur d'architecture s390 lors du fonctionnement en mode KVM.

Source: opennet.ru

Ajouter un commentaire