Dans le contexte: Historiquement, la grande majorité des problèmes de sécurité rencontrés sur la plate-forme Windows étaient des bogues liés à la mémoire. Rust peut fournir une solution très efficace à ce problème de longue date, et les programmeurs Windows sont bien conscients de son potentiel.

Bien que Rust soit encore un langage de programmation relativement récent, Microsoft a déjà adopté la technologie comme l’une des mises à niveau les plus prometteuses pour la programmation de base de Windows. Les ingénieurs logiciels de Redmond ont réécrit avec diligence des parties cruciales du système d’exploitation dans Rust, apportant des améliorations significatives en termes de performances et de sécurité au code sous-jacent.

Rust est un langage de programmation rapide et économe en mémoire créé par Graydon Hoare alors qu’il travaillait chez Mozilla, la première entreprise à le parrainer et à l’adopter officiellement pour son moteur de navigateur expérimental, Servo. En tant que langage compilé typique, Rust offre des performances natives pour divers types d’applications, y compris les logiciels informatiques, les appareils à faibles ressources et les appareils intégrés.

Lisez aussi : Comment un ascenseur en panne a conduit à l’un des langages de programmation les plus appréciés disponibles aujourd’hui

Outre ses performances, l’une des principales attractions de Rust est le fait que le langage a été conçu pour fournir sécurité de la mémoire dès le départ, éliminant ainsi de nombreuses catégories de bogues et de vulnérabilités potentielles au moment de la compilation. Notamment, les bogues de sécurité de la mémoire représentent 70 % des vulnérabilités de sécurité répertoriées CVE corrigées dans Windows depuis 2006.

Selon David « Dwizzle » Weston, vice-président de la sécurité du système d’exploitation et de l’entreprise chez Microsoft, du code Rust a déjà été implémenté dans le noyau Windows. S’exprimant lors du BlueHat IL 2023 à Tel Aviv, en Israël, le mois dernier, Weston a mentionné que Windows 11 pourrait démarrer dans Rust, même si le port du code est actuellement désactivé et caché derrière un drapeau de fonctionnalité.

Microsoft a commencé à réécrire des parties de Windows dans Rust en 2020, en commençant par le API DirectWrite (une partie du framework DirectX) qui est responsable de la gestion du rendu de texte de haute qualité, des polices vectorielles indépendantes de la résolution, de la prise en charge complète du texte et de la mise en page Unicode, etc. DWriteCore, l’implémentation Windows App SDK de l’API DirectWrite, comprend désormais environ 152 000 lignes de code Rust et environ 96 000 lignes de code C++. En plus d’améliorer la sécurité, ce nouveau mélange de code aurait apporté des améliorations significatives des performances (5 à 15 %) aux opérations de police.

2023 04 28 image 7

Windows 10 et 11 sont écrits en langage C, C++, C# et assembleur, avec des millions de lignes de code qui ne subiront probablement jamais une refonte complète basée sur Rust. Cependant, l’interface principale du périphérique graphique de Windows (Win32 GDI) est en cours de portage sur Rust, avec 36 000 lignes de code déjà converties. « Il y a en fait un SysCall dans le noyau Windows qui est maintenant implémenté dans Rust », a révélé Weston.

Microsoft n’est pas la seule grande entreprise technologique intéressée par l’adoption de Rust pour ses principaux produits logiciels. Le langage de programmation sécurisé en mémoire est déjà utilisé par Amazon, Facebook, Google et d’autres. Rust est également devenu une partie du noyau Linux. Développeurs open source souligner que l’engagement de Microsoft envers Rust serait une excellente nouvelle pour l’avenir du langage.