Le développement de pilotes en Rust progresse régulièrement, mais ils ne sont pas encore prêts pour la production.
Microsoft et la communauté des développeurs travaillent d’arrache-pied pour prendre en charge les pilotes Windows dans le langage de programmation système Rust. Les développeurs qui souhaitent écrire des pilotes en Rust disposent de meilleurs outils, mais il existe encore des obstacles à l’utilisation dans les environnements de production.
Avantages… et limites
Selon Nate Deisinger, ingénieur chez Microsoft, les développeurs peuvent déjà développer des pilotes en Rust via les packages existants pour WDM (Windows Driver Model), KMDF (Kernel Mode Driver Framework) et UMDF (User Mode Driver Framework). Ce n’est pas encore vraiment sûr : l’interaction avec le système d’exploitation nécessite souvent des blocs de code « non sécurisés ».
Les équipes de Windows Driver Frameworks travaillent donc sur des abstractions sécurisées afin de limiter le nombre de parties non sécurisées. L’intégration de Rust dans le noyau Windows lui-même est en cours (à partir de Windows 11 24H2), afin qu’aucun code de logique métier ne soit perdu lors de la programmation.
Avec cargo-wdk, il existe également une extension spécifique du gestionnaire de packages de Rust qui permet de créer facilement des modèles de pilotes, par exemple avec la commande « cargo wdk new –kmdf ». La prise en charge d’ARM64 et l’installation automatique des dépendances sont prévues.
Pas encore de production
Pour l’instant, les pilotes en Rust ne peuvent donc être utilisés qu’après approbation manuelle par Microsoft. Dans les prochains mois, Deisinger devrait partager plus d’informations sur la soumission de pilotes Rust dans le cadre du WHCP (Windows Hardware Compatibility Program).
Quatre ans après la préférence officielle de Microsoft pour Rust, la transition pour les pilotes Windows semble enfin en vue, mais ils ne sont pas encore prêts à être utilisés.
lire aussi