Lors de la confĂ©rence Open-Source Summit 2022 en cours, Linus Torvalds a Ă©voquĂ© la possibilitĂ© d'une intĂ©gration prochaine dans le noyau Linux de composants pour le dĂ©veloppement de pilotes d'appareils en langage Rust. Il est possible que des correctifs supportant Rust soient acceptĂ©s lors de la prochaine fenĂȘtre de soumission de modifications, qui constituera le noyau 5.20, prĂ©vue pour fin septembre.
La demande d'inclusion des modifications dans le noyau n'a pas encore Ă©tĂ© envoyĂ©e Ă Torvalds, mais l'ensemble des correctifs a Ă©tĂ© soumis Ă une rĂ©vision supplĂ©mentaire, dĂ©pourvue de commentaires majeurs, et a Ă©tĂ© testĂ© depuis longtemps dans la branche linux-next, prĂȘt Ă crĂ©er des couches d'abstraction au-dessus des sous-systĂšmes du noyau, pour l'Ă©criture de pilotes et de modules. Le support de Rust est proposĂ© comme une option, inactive par dĂ©faut et ne rendant pas Rust obligatoire parmi les dĂ©pendances de construction du noyau.
Les modifications proposées permettent d'utiliser Rust comme deuxiÚme langage pour le développement de pilotes et de modules du noyau. L'utilisation de Rust pour développer des pilotes permettra de créer des pilotes sécurisés et de meilleure qualité avec un minimum d'efforts, exemptés de problÚmes tels que l'accÚs à la mémoire libérée, la déréférenciation des pointeurs nuls et le dépassement de tampon.
La sécurité de la mémoire est assurée dans Rust au moment de la compilation par la vérification des références, le suivi de la propriété des objets et la prise en compte de la durée de vie des objets (portée), ainsi que par l'évaluation de l'accÚs à la mémoire lors de l'exécution du code. Rust fournit également des moyens de protection contre les débordements d'entiers, exige l'initialisation obligatoire des variables avant leur utilisation, gÚre mieux les erreurs dans la bibliothÚque standard, applique le concept de références et de variables immuables par défaut, et propose une forte typage statique pour minimiser les erreurs logiques.
Source : opennet.ru
