3 points par GN⁺ 2023-09-25 | 3 commentaires | Partager sur WhatsApp
  • Ensemble de crates Rust comprenant wdk-build, wdk-sys, wdk, wdk-panic, wdk-alloc et wdk-macros
    • La crate wdk-build est une bibliothèque qui configure les scripts de build Cargo pour la génération de bindings et l’édition de liens en aval du Windows Developer Kit (WDK)
    • La crate wdk-sys fournit des bindings FFI directs vers les API disponibles dans le WDK
    • La crate wdk fournit des bindings sûrs et idiomatiques vers les API disponibles dans le WDK
    • La crate wdk-panic fournit une implémentation par défaut du gestionnaire de panic pour les programmes compilés avec le WDK
    • La crate wdk-alloc prend en charge alloc pour les binaires compilés avec le WDK
    • La crate wdk-macros est un ensemble de macros qui facilite l’interaction avec les bindings directs de wdk-sys
  • La plateforme est conçue pour prendre en charge à la fois les modèles de développement de pilotes WDM et WDF
  • Elle en est encore à un stade précoce de développement et n’est pas recommandée pour un usage commercial
  • Ce projet est conçu pour prendre en charge les pilotes WDM, KMDF, UMDF ainsi que les services Win32
  • Les crates actuellement disponibles sur crates.io ne prennent en charge que KMDF v1.33, mais il est possible de générer des bindings pour tous les autres cas en clonant windows-drivers-rs et en modifiant la configuration spécifiée dans le build.rs de wdk-sys

3 commentaires

 
GN⁺ 2023-09-25
Avis sur Hacker News
  • Un article sur une plateforme qui permet de développer des pilotes Windows en Rust.
  • Mark Russinovich, pressenti comme le prochain CEO de Microsoft, est mentionné dans les commentaires. Il possédait auparavant une société de conseil sur le noyau NT et les outils logiciels avec lesquels les ingénieurs de Microsoft étaient formés.
  • Russinovich est connu pour avoir découvert le rootkit DRM de Sony, une protection de fichiers de type rootkit chez Symantec, ainsi que le piratage d’ERD Commander chez Best Buy.
  • Une discussion porte sur l’usage idiomatique de Rust dans le contexte de la structure QueueContext.
  • Un commentaire signalé suggère que les pilotes de périphériques seraient meilleurs dans des langages à gestion mémoire comme C#.
 
bungker 2023-11-30

Je pense que c’est un peu sous-estimé, donc j’ajoute ceci. Russinovich est quelqu’un qui a créé une multitude de ressources et d’outils en lien avec le noyau Windows. Parmi les développeurs travaillant sur le noyau Windows (y compris ceux qui ont créé des rootkits), il n’y a sans doute personne qui n’ait pas étudié en s’appuyant sur les ressources ou la documentation de Russinovich.

 
botplaysdice 2023-12-01

On entendait dire que le noyau Windows était en cours de réécriture en Rust, et voilà enfin que le SDK pour les pilotes arrive. Il y aura sans doute bientôt une annonce indiquant qu’à partir de 20XX, il faudra créer les pilotes en Rust.