Publication de l'hyperviseur Xen 4.21

Après 8 mois de développement, la version du téléchargeur libre Xen 4.21 a été publiée. Des entreprises telles qu'Amazon, Arm, EPAM Systems et AMD ont contribué au développement de cette nouvelle version. Le code du projet est écrit en C et est distribué sous la licence GPLv2+. Le développement se fait au sein de l'organisation Linux Foundation.

Modifications clés de Xen 4.21 :

  • La prise en charge complète du modèle d'appareils Linux stubdomain a été assurée, permettant l'exécution de composants pour l'émulation d'appareils sous un utilisateur non privilégié distinct. Le modèle Linux stubomains a été développé par le projet QUBES OS et prend en charge l'utilisation de pilotes d'émulation des dernières versions de QEMU, ainsi que les fonctionnalités auxiliaires disponibles dans QEMU pour les systèmes invités.
  • Modifications pour les systèmes basés sur l'architecture x86 :
    • Le nouveau algorithme de compression de la structure PDX (Page inDeX) a été ajouté, permettant d'améliorer le fonctionnement de Xen sur les processeurs Intel Sierra Forest et Granite Rapids en cas de mappage de la mémoire physique non linéaire (sparse memory map), permettant la présence de zones vides.
    • La possibilité de contrôler l'attribut de mise en cache dans les MTRR (Registers de Type de Mémoire) pour le registre BAR (Base Address Register) des dispositifs PCI de base de la plateforme Xen, utilisés par les systèmes invités en mode HVM, a été ajoutée. Par défaut, l'attribut UC (non cachable) est défini dans les MTRR pour la mémoire reflétée des dispositifs PCI, ce qui est de sens pour les dispositifs PCI réels, mais ne fait que réduire la performance des dispositifs PCI de la plateforme Xen.
    • Pour les processeurs AMD, un nouveau pilote amd-cppc/amd-cppc-epp a été ajouté, contrôlant le changement de fréquence du CPU pour atteindre des performances optimales. Ce pilote utilise le mécanisme CPPC (Collaborative Processor Performance Control), qui, contrairement à acpi-cpufreq, n'est pas limité à trois niveaux de performance et permet de réagir plus rapidement aux changements d'état.
    • Dans l'interface xenstore-stubdom, utilisée pour lancer xenstored sans privilèges Dom0, la prise en charge de la mise à jour en direct pour les environnements paravirtualisés en mode PVH a été mise en œuvre.
    • Pour Dom0 en mode PVH, la technologie Resizable BAR (Registre de Base d'Adresse Redimensionnable) a été mise en œuvre, permettant d'accéder immédiatement à toute la mémoire de l'appareil PCI Express, et non seulement selon les blocs.
    • La possibilité de passer des périphériques PCI dans des environnements domU en mode HVM (virtualisation matérielle complète) a été réalisée dans les configurations où dom0 fonctionne en mode PVH (hybride entre virtualisation matérielle et paravirtualisation).
  • Modifications pour les systèmes basés sur l'architecture ARM :
    • Ajout de la possibilité d'activer le mécanisme de protection de la pile (compilation avec le drapeau « -fstack-protector »), basé sur l'ajout de balises de canari dans la pile — des séquences aléatoires. En cas de dépassement de tampon lors de l'exploitation d'une vulnérabilité, la balise de canari est écrasée par d'autres données, ce qui entraîne le déclenchement d'une vérification de l'intégrité de la balise et l'initiation d'un arrêt anormal de l'application.
    • Ajout de la prise en charge du mécanisme eSPI (Extended Shared Peripheral Interrupts) fourni par les contrôleurs d'interruption GICv3.1.
    • Traitement du SMMU (System Memory Management Unit) lors du passage à travers des périphériques PCIe.
    • Ajout de la prise en charge des contrôleurs hôtes PCI utilisés dans la quatrième génération des SoC Renesas R-Car.
    • Ajout d'un support initial pour les processeurs Cortex-R52 et Cortex-R82 avec MPU (Memory Protection Unit).
  • Dans le port Xen pour l'architecture RISC-V, prise en charge de base de l'UART et possibilité de traitement des interruptions externes (APLIC/IMSIC) en mode hyperviseur.
  • La mise en œuvre des exigences pour le développement de programmes sûrs et fiables en C, énoncées dans les spécifications MISRA-C pour les systèmes critiques, a été poursuivie.
  • La prise en charge des anciennes versions de GCC et Clang a été interrompue, pour la compilation, les versions minimales requises sont désormais GCC 5.1, Clang 11, Binutils 2.25 et GNU Make 3.80.

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