Article de reference

Rust pour Linux

Rust pour Linux est un projet en cours, lancé en 2020, visant à intégrer Rust comme langage de programmation au sein du noyau Linux , écrit jusqu'alors exclusivement en C et en ...

Rust pour Linux est un projet en cours, lancé en 2020, visant à intégrer Rust comme langage de programmation au sein du noyau Linux , écrit jusqu'alors exclusivement en C et en assembleur . Ce projet ambitionne de tirer parti de la sécurité mémoire de Rust pour réduire les bogues lors du développement de pilotes de noyau . Les progrès ont été plus lents que prévu, tant pour les défenseurs de Rust que pour Linus Torvalds , responsable du projet noyau Linux. En décembre 2023, les premiers pilotes écrits en Rust ont été acceptés et intégrés à la version 6.8 du noyau. En décembre 2025, il a été annoncé que Rust au sein du noyau Linux n'était plus expérimental et que son développement devenait une composante officielle du développement du noyau.

Histoire

Le noyau Linux a été principalement écrit en C et en assembleur depuis sa première version en 1991. Vers 1997, l'ajout du C++ a été envisagé et expérimenté pendant deux semaines avant d'être abandonné. Rust a été créé en 2006 et combine les performances des langages de programmation bas niveau (tels que le C) avec une priorité donnée à la sécurité de la mémoire et un ensemble d'outils et une syntaxe conviviaux .

Un exemple de module de noyau externe chargeable Linux créé à l'aide du langage Rust a été publié par Taesoo Kim en 2013.

Le projet Rust pour Linux a été annoncé en 2020 sur la liste de diffusion du noyau Linux, avec pour objectif d'intégrer Rust comme langage de programmation utilisable au sein du projet Linux. Lors de l' Open Source Summit 2022, Linus Torvalds a déclaré que l'intégration des travaux du projet pourrait débuter dès la sortie de Linux 5.20, ultérieurement renommée Linux 6.0. La première version candidate de Linux 6.0 a été publiée le 14 août 2022, sans prise en charge de Rust. Dans les notes de version de Linux 6.0-rc1, Torvalds a exprimé son intention d'ajouter la prise en charge de Rust : « J'espérais en fait que nous aurions accès à une partie de l'infrastructure Rust initiale, ainsi qu'à la machine virtuelle LRU multigénérationnelle, mais cela n'a pas été le cas cette fois-ci. » Le 19 septembre 2022, un article de ZDNet a révélé un courriel de Linus Torvalds indiquant que « Sauf imprévu, [Rust] sera inclus dans la version 6.1 ».

En octobre 2022, une demande d'intégration de l'implémentation de Rust pour Linux a été approuvée par Torvalds. À partir de Linux 6.1, la prise en charge a été volontairement réduite au minimum afin de permettre aux développeurs de tester la fonctionnalité.

Les développeurs de Rust pour Linux ont créé une nouvelle bibliothèque, « pinned-init », pour initialiser de manière sûre et fiable la mémoire qui ne doit pas être déplacée. Elle a été initialement incluse dans Linux 6.4, et améliorée dans les versions ultérieures.

Linux 6.10 incluait la prise en charge de l'architecture de processeur RISC-V pour Rust.

En juillet 2024, une modification a été acceptée dans Linux pour prendre en charge plusieurs versions de Rust pour la première fois, permettant la compilation en utilisant à la fois la version 1.78 (publiée le 2 mai 2024) et la version 1.79 (publiée le 13 juin 2024).

En août 2024, Rust pour Linux dépendait de fonctionnalités instables du compilateur Rust.

En décembre 2025, lors du Linux Kernel Developers Summit , il a été décidé de promouvoir Rust, initialement expérimental, au rang de composant essentiel du noyau. Cela porte à C, à l'assembleur et à Rust la liste des langages essentiels du noyau Linux.

Usage

Capture d'écran d'un kernel panic Linux, montrant le texte Tux en ASCII, un point d'exclamation ASCII, un code QR et le message suivant : « KERNEL PANIC ! Veuillez redémarrer votre ordinateur. Tentative d'arrêt du processus init ! Code de sortie : 0x00000100 ».
Panne du noyau DRM avec code QR : exemple de fonctionnalité du noyau Linux implémentée en Rust

Le noyau Linux contient les composants Rust suivants :

Parmi les autres projets notables utilisant Rust sous Linux, on peut citer :

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index