Linux va-t-il révolutionner la gestion de la mémoire avec le support inconditionnel du paging à 5 niveaux pour les builds du noyau x86_64 ?
Linux

Linux va-t-il révolutionner la gestion de la mémoire avec le support inconditionnel du paging à 5 niveaux pour les builds du noyau x86_64 ?

Par Hugues , le 6 juillet 2024 - 3 minutes de lecture

Linux est sur le point de franchir une nouvelle étape dans la gestion de la mémoire avec le support inconditionnel du paging à 5 niveaux pour les builds du noyau x86_64. Cette évolution promet une révolution dans le domaine, offrant des perspectives innovantes pour l’optimisation des performances et la gestion des ressources système.

Contexte et Évolution du Paging à 5 Niveaux

Depuis près d’une décennie, Intel travaille sur le support du paging à 5 niveaux pour le noyau Linux afin d’augmenter l’espace des adresses virtuelles et physiques avec l’augmentation de la taille de la mémoire. Les éléments côté noyau du paging à 5 niveaux ont été intégrés dans Linux 4.12 en 2017 et ont été activés par défaut depuis 2019 avec Linux 5.5. Les processeurs Intel (depuis Ice Lake) et les processeurs AMD (depuis Zen 4) prennent en charge cette fonctionnalité.

Pourquoi le Paging à 5 Niveaux ?

Le paging à 5 niveaux vise à étendre la taille des adresses virtuelles de 48 à 57 bits, permettant ainsi jusqu’à 128 Po (Pétaoctets) de mémoire virtuelle. Cette avancée est cruciale pour répondre aux besoins croissants en mémoire des systèmes modernes et des applications gourmandes en ressources.

Changements dans le Noyau Linux

Récemment, l’ingénieur d’Intel Kirill Shutemov a envoyé une série de correctifs visant à supprimer l’option de compilation “CONFIG_X86_5LEVEL” et à activer systématiquement le paging à 5 niveaux pour les nouveaux builds du noyau x86_64. Ces correctifs suggèrent également de supprimer “CONFIG_DYNAMIC_MEMORY_LAYOUT” et de faire du modèle de mémoire “SPARSEMEM_VMEMMAP” le seul modèle de mémoire.

“Les processeurs Intel et AMD prennent en charge le paging à 5 niveaux, qui devrait être plus largement adopté à l’avenir. Supprimez CONFIG_X86_5LEVEL. En préparation, supprimez CONFIG_DYNAMIC_MEMORY_LAYOUT et faites de SPARSEMEM_VMEMMAP le seul modèle de mémoire.”

Impact sur la Gestion de la Mémoire Linux

Hands typing on a keyboard with a Linux penguin sticker.

En pratique, cela ne signifie pas grand-chose pour la plupart des distributions Linux puisque ces kernels sont déjà expédiés avec CONFIG_X86_5LEVEL activé. Cependant, c’est un pas significatif vers l’adaptation du noyau amont aux besoins matériels modernes et aux exigences des nouvelles technologies. Cela simplifie également la configuration et la gestion du noyau.

Bénéfices pour les Utilisateurs et les Développeurs

  • Meilleure gestion de la mémoire : Avec un espace d’adressage plus grand, les systèmes pourront gérer de plus grandes quantités de mémoire virtuelle et physique.
  • Simplification de la configuration du kernel : L’élimination de certaines options de configuration réduit la complexité lors de la compilation du kernel.
  • Prise en compte des besoins futurs : En se préparant pour un usage plus large, cette fonctionnalité assure que le noyau Linux reste à la pointe des avancées technologiques.

En tant que développeur web et passionné de domotique, je suis toujours excité de voir comment les avancées dans le noyau Linux peuvent améliorer les performances et la capacité des systèmes que nous utilisons quotidiennement.

Partager cet article :
Avatar photo

Hugues

Hugues, a 39 ans et il est développeur web indépendant. Passionné de football, de running et de domotique il aime créer des petites applications pour mieux gérer son quotidien.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.