Oracle Linux 9 et Unbreakable Enterprise Kernel 7 disponibles

Oracle a publié des versions stables de la distribution Oracle Linux 9 et d'Unbreakable Enterprise Kernel 7 (UEK R7), positionnées pour être utilisées dans la distribution Oracle Linux comme alternative au package de noyau standard de Red Hat Enterprise Linux. La distribution Oracle Linux 9 est basée sur la base de packages Red Hat Enterprise Linux 9 et est entièrement compatible binaire avec celle-ci.

Des images ISO d'installation de 8.6 Go et 840 Mo, préparées pour les architectures x86_64 et ARM64 (aarch64), sont proposées au téléchargement sans restrictions. Oracle Linux 9 dispose d'un accès illimité et gratuit au référentiel yum avec des mises à jour de packages binaires qui corrigent les erreurs (errata) et les problèmes de sécurité. Des référentiels pris en charge séparément avec des ensembles de packages Application Stream et CodeReady Builder ont également été préparés pour le téléchargement.

En plus du package de noyau de RHEL (basé sur le noyau 5.14), Oracle Linux propose son propre noyau, Unbreakable Enterprise Kernel 7, basé sur le noyau Linux 5.15 et optimisé pour fonctionner avec des logiciels industriels et du matériel Oracle. Les sources du noyau, y compris la répartition en correctifs individuels, sont disponibles dans le référentiel public Oracle Git. Le noyau Unbreakable Enterprise est installé par défaut, positionné comme une alternative au package de noyau RHEL standard et fournit un certain nombre de fonctionnalités avancées telles que l'intégration de DTrace et la prise en charge améliorée de Btrfs. Hormis le noyau supplémentaire, les versions d'Oracle Linux 9 et RHEL 9 sont totalement identiques en termes de fonctionnalités (la liste des modifications peut être trouvée dans l'annonce de RHEL9).

Innovations clés dans Unbreakable Enterprise Kernel 7 :

  • Prise en charge améliorée de l'architecture Aarch64. La taille par défaut des pages mémoire sur les systèmes ARM 64 bits a été réduite de 64 Ko à 4 Ko, ce qui correspond mieux aux tailles de mémoire et aux charges de travail typiques des systèmes ARM.
  • La livraison du système de débogage dynamique DTrace 2.0 s'est poursuivie, qui a été basculée vers l'utilisation du sous-système du noyau eBPF. DTrace 2.0 s'exécute sur eBPF, de la même manière que les outils de traçage Linux existants fonctionnent sur eBPF.
  • Les capacités du système de fichiers Btrfs ont été étendues. Une implémentation asynchrone de l'opération DISCARD a été ajoutée à Btrfs pour marquer les blocs libérés qui n'ont plus besoin d'être physiquement stockés. L'implémentation asynchrone vous permet de ne pas attendre que le lecteur termine DISCARD et d'effectuer cette opération en arrière-plan. Ajout de nouvelles options de montage pour simplifier la récupération de données à partir d'un système de fichiers endommagé : « rescue=ignorebadroots » pour le montage malgré les dommages causés à certaines arborescences racines (étendue, uuid, relocalisation des données, périphérique, csum, espace libre), « rescue=ignoredatacsums » pour désactiver vérifier les sommes de contrôle des données et "rescue=all" pour activer simultanément les modes "ignorebadroots", "ignoredatacsums" et "nologreplay". Optimisations significatives des performances liées aux opérations fsync(). Ajout de la prise en charge de fs-verity (authentification de fichier et vérification de l'intégrité) et du mappage d'ID utilisateur.
  • XFS prend en charge les opérations DAX pour un accès direct aux fichiers, en contournant le cache de pages pour éliminer la double mise en cache. Ajout de modifications pour résoudre les problèmes de débordement avec le type de données time_t 32 bits en 2038, y compris de nouvelles options de montage bigtime et inobtcount.
  • Des améliorations ont été apportées au système de fichiers OCFS2 (Oracle Cluster File System).
  • Ajout du système de fichiers ZoneFS, qui simplifie le travail de bas niveau avec les périphériques de stockage zonés. Les lecteurs zonés désignent des appareils sur des disques magnétiques durs ou des SSD NVMe, dont l'espace de stockage est divisé en zones qui constituent des groupes de blocs ou de secteurs, dans lesquels seul l'ajout séquentiel de données est autorisé, mettant à jour l'ensemble du groupe de blocs. Le ZoneFS FS associe chaque zone du disque à un fichier distinct, qui peut être utilisé pour stocker des données en mode brut sans manipulation au niveau du secteur et du bloc, c'est-à-dire Permet aux applications d'utiliser l'API de fichier au lieu d'accéder directement au périphérique de bloc à l'aide d'un ioctl.
  • La prise en charge du protocole VPN WireGuard a été stabilisée.
  • Les capacités du sous-système eBPF ont été étendues. Le mécanisme CO-RE (Compile Once - Run Everywhere) a été implémenté, qui résout le problème de portabilité des programmes eBPF compilés et permet de compiler le code des programmes eBPF une seule fois et d'utiliser un chargeur universel spécial qui adapte le programme chargé à le noyau actuel et le format des types BPF). Ajout du mécanisme « trampoline BPF », qui vous permet de réduire pratiquement la surcharge lors du transfert à zéro des appels entre le noyau et les programmes BPF. La possibilité d'accéder directement aux fonctionnalités du noyau à partir des programmes BPF et de suspendre le gestionnaire est fournie.
  • Un détecteur de verrous divisés a été intégré, ce qui se produit lors de l'accès à des données non alignées en mémoire du fait que lors de l'exécution d'une instruction atomique, les données traversent deux lignes de cache du processeur. Le noyau peut identifier à la volée les blocages qui entraînent une dégradation significative des performances et émettre des avertissements ou envoyer un signal SIGBUS à l'application à l'origine du blocage.
  • Le support est fourni pour Multipath TCP (MPTCP), une extension du protocole TCP permettant d'organiser le fonctionnement d'une connexion TCP avec la livraison de paquets simultanément sur plusieurs routes via différentes interfaces réseau associées à différentes adresses IP.
  • Le planificateur de tâches implémente le mode de planification SCHED_CORE, qui vous permet de contrôler quels processus peuvent être exécutés ensemble sur le même cœur de processeur. Chaque processus peut se voir attribuer un identifiant de cookie qui définit l'étendue de la confiance entre les processus (par exemple, appartenant au même utilisateur ou conteneur). Lors de l'organisation de l'exécution du code, le planificateur peut garantir qu'un cœur de processeur est partagé uniquement entre les processus associés au même propriétaire, ce qui peut être utilisé pour bloquer certaines attaques Spectre en empêchant l'exécution de tâches fiables et non fiables sur le même thread SMT (Hyper Threading). .
  • Pour les groupes de contrôle, un contrôleur de mémoire de dalle a été implémenté, ce qui se distingue par le transfert de la comptabilité des dalles du niveau des pages mémoire au niveau des objets du noyau, ce qui permet de partager des pages de dalle dans différents groupes de contrôle, au lieu d'allouer des caches de dalle séparés pour chaque groupe de contrôle. L'approche proposée permet d'augmenter l'efficacité d'utilisation de slab, de réduire de 30 à 45 % la taille de la mémoire utilisée pour slab, de réduire considérablement la consommation globale de mémoire du noyau et de réduire la fragmentation de la mémoire.
  • La livraison des données de débogage est fournie au format CTF (Compact Type Format), qui fournit un stockage compact d'informations sur les types C, les connexions entre les fonctions et les symboles de débogage.
  • Le module DRBD (Distributed Replicated Block Device) et le périphérique /dev/raw ont été abandonnés (utilisez l'indicateur O_DIRECT pour un accès direct aux fichiers).

Source: opennet.ru

Ajouter un commentaire