EN SAVOIR PLUS
-
Oh non, qu’est-il arrivé à mon OOHPod ? L’invite de commande Windows fait une apparition surprise
-
L’organisme de surveillance britannique cherche à durcir les conditions concernant la domination de Microsoft sur les logiciels d’entreprise
-
Une expérience d’IA à 24 000 $ porte le compilateur TypeScript sur Rust
-
Tiny11 met Windows 11 au régime sans l’entraînement PowerShell
-
Cisco et Nvidia s’associent pour créer des produits enfichables plus gros et plus rapides
Lorsque les développeurs et ingénieurs de Microsoft se mettent au code, ils peuvent désormais choisir de travailler dans Rust, que Redmond a ajouté à sa liste de langages canoniques.
« Rust est désormais un langage de niveau 1 chez Microsoft, et cela signifie simplement qu’il se situe parmi C++, C# et TypeScript comme les langages les mieux pris en charge pour le développement interne dans l’entreprise », a expliqué Victor Ciura, ingénieur principal Microsoft pour l’équipe d’outils Rust, lors d’une conférence d’ouverture aujourd’hui lors de la RustConf annuelle de cette année, qui se tient cette semaine à Montréal.
Ciura a déclaré que Microsoft avait « ouvert la voie » à des outils et à des processus qui prennent en charge le développement local de Rust tout au long du cycle de vie du développement logiciel.
AD ENREGISTREMENT
Rust n’est pas étranger chez Microsoft et est déjà présent dans plus de 100 référentiels de projets Microsoft. La société a créé Oxidizer, un ensemble de caisses permettant de créer des services évolutifs dans Rust, qui ont été utilisés pour créer et affiner les services de base de Microsoft 365 (M365) tels qu’Outlook, Word, Excel, OneDrive et SharePoint. La pile technologique Copilot doit également beaucoup à Rust.
AD ENREGISTREMENT
Mais le travail vraiment compliqué reste à faire. Compte tenu du récent déluge de correctifs Windows Patch Tuesday, l’une des utilisations les plus importantes de Rust sera sans aucun doute la consolidation du code Windows C/C++ qui fuit.
C’est pour cela que Rust a été conçu. Le développeur de Mozilla, Graydon Hoare, a créé Rust en tant que projet parallèle en 2006, principalement en tant que langage hautes performances qui, contrairement au C et au C++, protégeait contre les bogues de mémoire.
Réécrire des programmes dans Rust pour améliorer les performances et minimiser les bugs est depuis devenu une corvée courante pour les chefs de projet, qui ont tout rustifié, des bases de données aux gestionnaires de packages, souvent avec l’aide de l’IA.
Nouvelles fouilles
Redmond a déjà accompli un travail considérable pour rendre Rust confortable sur Microsoft Visual C++ (MSVC), sa plate-forme native de compilation de binaires Windows.
Les ingénieurs de l’entreprise ont notamment construit rustc_codegen_utcun backend de génération de code de compilateur Rust personnalisé qui connecte le rouillé compilateur directement dans la chaîne d’outils interne de MSVC pour Windows.
« De liaison rouillé « Ce backend permet à Rust de s’appuyer sur le même investissement de plate-forme, avec une compatibilité parfaite dès le départ, plutôt que d’exiger une implémentation parallèle de toutes les fonctionnalités spécifiques à Windows », a écrit Ciura dans un article de blog qui détaille les efforts de Redmond. « Le résultat est une plate-forme de génération de code unifiée pour Rust et C++ sous Windows. »
Pointeurs pendants et code étranger
AD ENREGISTREMENT
Même avec l’intégration étroite de Rust, les ingénieurs Microsoft auront du pain sur la planche. L’un des thèmes récurrents de la RustConf de cette année est la lutte contre le dangereux territoire « dangereux » qui apparaît lors du mélange de code Rust et C++. Bien que le compilateur Rust puisse signaler les erreurs de mémoire, il ne couvre généralement pas les pointeurs vers les allocations de mémoire C++.
Pourtant, Redmond se dirigeant vers Rust est une évolution bienvenue. Dans son discours d’ouverture à la RustConf 2025, Mark Russinovich, CTO de Microsoft Azure, a noté qu’environ 70 % des CVE Windows sont des problèmes de mémoire.
« L’une des choses que j’ai réalisé il y a longtemps est que peu importe à quel point nous voulons vraiment améliorer le C et le C++, nous ne pouvons pas le rendre aussi bon que ce avec quoi Rust a commencé », a-t-il déclaré. ®
