Le débat sur Rust dans Linux est terminé. L’implémentation a commencé. « A moins que quelque chose de bizarre n’arrive, il [Rust] sera intégré dans la version 6.1 », a confirmé Linus Torvalds, le créateur de Linux, interrogé par ZDNet. L’entrée du langage de programmation Rust dans le noyau Linux est prévue depuis un certain temps. En 2020, les développeurs ont commencé à envisager d’utiliser le langage Rust pour le nouveau code en ligne de Linux. Google, qui prend en charge Rust pour le développement d’Android – lui-même une distribution Linux – a commencé à faire pression pour l’intégration de Rust dans le noyau Linux en avril 2021.
Comme l’indiquait alors Wedson Almeida Filho, de l’équipe Android de Google, « nous pensons que Rust est désormais prêt à rejoindre le langage C en tant que langage pratique pour l’implémentation du noyau. Il peut nous aider à réduire le nombre de bugs potentiels et de failles de sécurité dans le code privilégié tout en jouant agréablement avec le noyau central et en préservant ses caractéristiques de performance ».
Il a pourtant fallu un certain temps pour en convaincre les principaux développeurs du noyau Linux. Certains craignaient que des extensions non standard de Rust soient nécessaires pour qu’il fonctionne sous Linux. Par exemple, avec le nouveau pilote NVMe de Rust Linux, plus de 70 extensions ont dû être apportées à Rust pour qu’il fonctionne.
Un premier pas important
Ce problème était toujours d’actualité lors du sommet des mainteneurs du noyau Linux. Il a finalement été décidé que Rust est suffisamment bien supporté par Clang – le front-end du compilateur de la famille du langage C – pour aller de l’avant. « Clang fonctionne, donc la fusion de Rust aiderait probablement et ne nuirait pas au noyau », avait déjà indiqué Linus Torvalds auparavant.
Le fait que Rust sur Linux soit devenu beaucoup plus mature a également aidé Rust. En outre, Andreas Hindborg, ingénieur principal chez Western Digital, a montré qu’il était possible d’écrire un pilote de premier ordre, un pilote SSD NVM-Express (NVMe) pour Linux en Rust. Les mainteneurs étaient convaincus qu’il était temps d’aller de l’avant avec Rust dans Linux. En bref, ils ont convenu que Rust sous Linux était prêt à fonctionner.
Seul bémol : Linus Torvalds a toutefois prévenu que dans cette première version, Rust aura « juste l’infrastructure de base (c’est-à-dire pas encore de cas d’utilisation sérieux) ». Cela reste malgré tout, un premier pas important pour Rust et Linux.
Source : ZDNet.com
(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/fr_FR/all.js#appId=243265768935&xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));