Linux 6.1 : Rust est prêt à rejoindre C

En plus de C, il est possible dorénavant d’utiliser un autre langage de programmation, Rust, pour le développement du noyau Linux. Une première.

La disponibilité générale de la version stable de Linux 6.1. a été annoncée dimanche 11 décembre. À son propos, Linus Torvalds a déclaré sur la Linux Kernel Mailing List (LKML) :

« Je suis beaucoup plus heureux de l’état de la 6.1 que je ne l’étais il y a quelques semaines », a souligné le créateur du noyau Linux. L’informaticien a également insisté sur le fait que les contributeurs ont deux semaines pour proposer du code jugé suffisamment stable par la communauté pour être intégré avec la prochaine « rc » (release candidate) du noyau. Et ce dans le cadre de la classique fenêtre de fusion (window merger) qui s’ouvre.

« Quoi qu’il en soit, je pense que j’ai assez insisté là-dessus, profitons de ce déploiement et des festivités à venir », a-t-il ajouté. « La semaine dernière a vraiment été très calme, et ce sont essentiellement quelques correctifs de dernière minute, principalement orientés sur les pilotes (la mise en réseau en particulier, mais aussi du bruit autour [des] média, HID et GPU). »

Que retenir alors de Linux 6.1 ?

Prise en charge de Rust, KMSAN, KCFI…

Pour la première fois dans l’histoire du noyau socle de multiples systèmes et distributions, Rust est maintenant prêt à rejoindre C en tant que langage de programmation pris en charge pour implémenter le kernel Linux. Le support initial est assuré.

Comme l’avait indiqué Linus Torvalds en septembre dernier, la première implémentation du support Rust for Linux va juste disposer « de l’infrastructure de base (c’est-à-dire pas encore de cas d’utilisation sérieux) ». Malgré tout, une étape importante est franchie.

La version 6.1 du noyau inclut d’autres avancées parmi lesquelles :

– Optimisation des récupérations et des performances mémoire (Multi-gen LRU)
– Amélioration de la hiérarchisation mémoire
– Allocateur de mémoire spécifique BPF
– KMSAN (Kernel Memory Sanitizer) pour nettoyer la mémoire du noyau
– Prise en charge de KCFI (Kernel Control Flow Integrity)

D’autres nouveautés ont été listées par Kernelnewbies, dont la structure de données « maple tree » qui remplace la structure existante en arbres binaires dit rouge-noir (red-black trees).

(crédit photo © Steve-Young)