Microsoft vient d'annoncer une étape majeure pour Windows Subsystem for Linux (WSL) : son passage en open source. Cette décision, qui intervient peu avant le dixième anniversaire de l'outil, promet de nouvelles perspectives pour la communauté des développeurs. Mais au-delà de l'effet d'annonce, quelles sont les implications concrètes ?

- Microsoft a rendu le code de WSL open source sur GitHub, améliorant la transparence et permettant la collaboration communautaire.
- WSL a évolué d'une simple couche de compatibilité à un véritable noyau Linux fonctionnant dans une machine virtuelle.
- Cette décision rejoint le reste des initiatives open-source de Microsoft comme VS Code et Copilot.
Cette ouverture du code, annoncée à l'occasion de la conférence Build de Microsoft, répond à une demande formulée dès les premiers jours du projet WSL sur GitHub, il y a près de neuf ans. Concrètement, une grande partie des composants de WSL est maintenant disponible sous licence open source sur la plateforme GitHub. Cela inclut les outils en ligne de commande tels que wsl.exe, le service wslservice.exe qui gère les machines virtuelles et les distributions, ainsi que les processus d'initialisation côté Linux et le serveur Plan 9 assurant le partage de fichiers entre les deux systèmes. Cependant, certains éléments, notamment le pilote Lxcore.sys de WSL 1 et des composants liés à la redirection du système de fichiers \\wsl.localhost, demeurent propriétaires car intégrés à l'image de Windows.
WSL : de la couche de compatibilité à l'ouverture du code
L'histoire de WSL est celle d'une évolution constante pour mieux servir les développeurs. Lancé en 2016 avec la mise à jour anniversaire de Windows 10, WSL 1 fonctionnait comme une couche de compatibilité. Il traduisait les appels système Linux pour permettre l'exécution native d'exécutables au format ELF directement sous Windows, grâce à un mécanisme de « pico-processus » et au pilote lxcore.sys. Si cette approche initiale permettait d'utiliser des outils Linux, elle montrait ses limites en termes de compatibilité.
Pour surmonter ces obstacles, Microsoft a introduit WSL 2 en 2019. Cette version majeure a changé la donne en intégrant un véritable noyau Linux fonctionnant au sein d'une machine virtuelle légère gérée via Hyper-V. Ce passage à un noyau Linux complet a considérablement amélioré la compatibilité et les performances, ouvrant la voie à des fonctionnalités plus avancées. Parmi celles-ci, le support des applications graphiques Linux grâce à WSLg a été une avancée notable, rendant concret le fait que des apps Linux sur Windows 10, c'est possible et de plus en plus transparent pour l'utilisateur.
Une autre étape clé fut, en 2021, la décision de découpler WSL du cycle de mises à jour de Windows. En devenant une application disponible via le Microsoft Store, WSL a pu bénéficier de mises à jour plus fréquentes et indépendantes du système d'exploitation principal. Cette distribution facilitée a permis aux utilisateurs de Windows 11 de pouvoir facilement installer Linux en passant par le Microsoft Store. Cette agilité a sans doute préparé le terrain pour l'ouverture du code annoncée aujourd'hui.
Plus de transparence et de collaboration : les promesses de l'open source pour WSL
L'ouverture du code source de WSL n'est pas qu'un geste symbolique, elle apporte des changements concrets et des avantages tangibles pour la communauté des développeurs. Le principal bénéfice est l'accès direct au code sur GitHub (dépôt Microsoft/WSL), ce qui offre une transparence inédite sur le fonctionnement interne de WSL. Les développeurs peuvent désormais compiler WSL depuis les sources, créer leurs propres versions (forks), mais surtout, proposer des correctifs et de nouvelles fonctionnalités.
Cette collaboration accrue devrait se traduire par une accélération du développement de WSL. Les bogues pourraient être identifiés et corrigés plus rapidement grâce aux contributions de la communauté, et les fonctionnalités les plus demandées pourraient voir le jour plus vite. L'ouverture du code facilite également les audits de sécurité par des tiers, renforçant la fiabilité de l'outil. Microsoft s'attend à ce que cette nouvelle ère collaborative mène à des améliorations des performances de WSL et à une intégration encore plus poussée avec les services Linux. La firme de Redmond reconnaît d'ailleurs que WSL n'aurait jamais atteint son niveau actuel sans l'implication de sa communauté, même lorsque le code n'était pas accessible.
Les composants désormais ouverts incluent les exécutables en ligne de commande (wsl.exe, wslconfig.exe, wslg.exe), le service Windows (wslservice.exe) qui orchestre le démarrage de la machine virtuelle WSL 2 et la gestion des distributions, les processus d'initialisation et daemons côté Linux (comme init ou gns pour le réseau), ainsi que l'implémentation du serveur Plan 9 qui gère le partage de fichiers entre Windows et Linux. Les éléments qui restent fermés, tels que le pilote Lxcore.sys pour WSL 1 ou P9rdr.sys pour la redirection de \\wsl.localhost, sont profondément liés au système Windows lui-même.
Source : Microsoft
03 mars 2025 à 10h05