Sélectionner une page

Si le langage C semblait régner en maître dans le noyau Linux, les choses semblent aujourd’hui changer. En effet, le système d’exploitation a confirmé son intérêt pour Rust, qui n’est autre que le langage de programmation réalisé pour Mozilla. Une mise à jour vient d’ailleurs de rendre officiel la place de Rust en tant que second langage de Linux. Explications par Ralph Kattan, spécialiste de linux à Genève.

Un compilateur Rust plus stable

Le temps où seul le langage C pouvait être utilisé dans le noyau Linux semble désormais révolu. Le langage système de haut niveau Rust se rapproche, en effet, peu à peu de Linux. Une « série de correctifs visant à ajouter le support de Rust en tant que second langage au noyau Linux » a d’ailleurs été annoncée.

Dans les faits, le code Rust reposera non plus sur les compilateurs bêta mais sur le compilateur Rust stable. Ainsi, à chaque fois qu’un nouveau compilateur Rust stable sera publié, Rust sur Linux migrera.

Une amélioration majeure au niveau de la gestion de la mémoire

L’introduction de Rust comme deuxième langage du noyau Linux a été présentée lors de la conférence virtuelle 2020 Linux Plumbers Conference. Le projet, sous la direction de Nick Desaulniers (ingénieur chez Google) et de Josh Triplett (responsable du langage Rust), repose sur le fait que Rust est plus sûr que le langage C, notamment au niveau de la gestion des erreurs de mémoire. Ce point est crucial quand on sait que près de deux tiers des problèmes de sécurité sont attribués à une mauvaise gestion de la mémoire. Il s’agit donc d’une amélioration majeure.

Le projet prévoit une approche lente et régulière de Rust dans le noyau Linux avant certaines évolutions, en matière de programmes et d’interfaces. Selon les prévisions, le premier code Rust dans Linux devrait apparaître au courant de l’année 2022.