Des développeurs clés de Linux, dont Linus Torvalds, ont approuvé Rust comme langage à part entière pour la programmation du noyau, mettant fin à son statut expérimental. La décision a été prise lors du Kernel Maintainers Summit annuel et annoncée sur LWN.net. Bien que cela élève Rust au même niveau que C et l'assembleur, la mise en œuvre pratique nécessite encore un travail important de liaison.
Cette approbation marque une étape importante pour Rust dans l'écosystème Linux. Les développeurs ont décidé de ce changement hier lors du Kernel Maintainers Summit, comme rapporté brièvement sur LWN.net. Rust, qui a intégré le noyau il y a trois ans avec Linux 6.1, a maintenant achevé sa phase expérimentale après un travail préparatoire extensif.
En termes pratiques, Rust rejoint l'assembleur et C comme l'un des langages principaux pour le développement du noyau. Cependant, les programmeurs ne peuvent pas encore écrire des pilotes de noyau arbitraires en Rust sans limitations. De nombreux sous-systèmes manquent du code de liaison nécessaire, ou des bindings, pour interfacer avec l'infrastructure existante basée sur C. Par exemple, un pilote WLAN en Rust aurait besoin de bindings pour exploiter la base du noyau écrite en C pour les appareils WLAN et PCIe.
Des progrès sont en cours dans des domaines sélectionnés. Des bindings existent ou sont en développement pour des sous-systèmes comme les pilotes graphiques du noyau. Un exemple notable est Nova, un pilote écrit en Rust pour les cœurs graphiques modernes de Nvidia, attendu sur de nombreux PC dans les années à venir.
Les partisans mettent en avant les avantages potentiels de Rust. Ses fonctionnalités visent à réduire les vulnérabilités de sécurité, telles que les erreurs d'accès mémoire, les débordements de tampon et les problèmes de concurrence. De plus, ce langage moderne pourrait rationaliser les processus de développement et attirer de jeunes programmeurs vers le travail sur le noyau Linux.
Malgré ce statut officiel, beaucoup reste à faire pour intégrer pleinement Rust dans l'ensemble du noyau.