Le sous-système Windows pour Linux (WSL) est désormais officiellement open source
Il y a eu des nouvelles vraiment excitantes de Microsoft concernant le Windows Subsystem for Linux, ou WSL en abrégé. Après des années de travail, Microsoft a rendu le code qui alimente WSL disponible publiquement. Oui, vous avez bien lu. Windows Subsystem for Linux (WSL) est maintenant officiellement Open Source !
C'est un grand pas, surtout quand on pense à comment les choses étaient auparavant.
Toutes les parties de WSL ne sont pas encore ouvertes, comme certains anciens codes ou des parties qui aident les fichiers Windows et Linux à communiquer entre eux de manière fluide. Mais une grande partie du noyau est maintenant ouverte.
Qu'est-ce que WSL exactement ?
Imaginez que vous avez un ordinateur Windows, mais que vous devez également utiliser des outils qui fonctionnent mieux sur Linux. Peut-être êtes-vous un développeur travaillant sur des projets open source. Par le passé, vous auriez peut-être eu besoin d'un ordinateur Linux séparé ou d'une machine virtuelle.
WSL change cela.
Le Windows Subsystem for Linux (WSL) est une fonctionnalité spéciale intégrée directement à Windows qui vous permet de faire tourner Linux comme une autre application.
Vous pouvez utiliser des programmes Linux, travailler avec des fichiers Linux et utiliser des outils en ligne de commande Linux populaires comme Bash, sed et awk, directement sur votre machine Windows.
Vous pouvez même exécuter des applications GUI directement en utilisant la dernière version de WSL2.
Oubliez les tracas liés à la configuration de machines virtuelles complexes ou au démarrage double de votre ordinateur.
WSL est conçu pour offrir une expérience fluide et productive aux développeurs qui souhaitent utiliser à la fois Windows et Linux en même temps.
WSL 1 contre WSL 2
Il existe deux principales versions : WSL 1 et WSL 2. WSL 2 est la version par défaut actuelle lorsque vous installez une distribution Linux.
WSL 1
- La version originale, WSL 1, était basée sur une technologie qui permettait à Windows d'exécuter nativement des binaires Linux (ELF).
- Il utilisait un pilote côté noyau appelé
lxcore.sysqui permettait à Windows d’exécuter des appels système Linux directement dans le noyau de Windows. - WSL 1 est toujours pris en charge, bien que WSL 2 soit généralement recommandé.
WSL 2
- WSL 2 représente une révision majeure de l'architecture sous-jacente par rapport à WSL 1.
- Au lieu d’implémenter des appels système Linux dans le noyau Windows, WSL 2 utilise la technologie de virtualisation pour exécuter un noyau Linux complet à l’intérieur d’une machine virtuelle utilitaire légère (VM).
- Cette VM est gérée et fonctionne en arrière-plan. Elle offre les avantages de WSL 1, comme une intégration fluide et des temps de démarrage rapides, mais avec les avantages d'un vrai noyau Linux.
- Les distributions Linux s'exécutent en tant que conteneurs isolés à l'intérieur de cette VM gérée.
- Un objectif clé de WSL 2 était d'augmenter la performance du système de fichiers (principalement pour les fichiers situés dans le système de fichiers Linux) et d'ajouter une compatibilité complète des appels système. Bien que WSL 2 soit généralement plus performant que WSL 1, accéder aux fichiers situés sur le système de fichiers Windows depuis WSL 2 peut être plus lent que de le faire dans WSL 1. Il est recommandé de stocker les fichiers de projet sur le même système d'exploitation que les outils que vous utilisez pour éviter ces problèmes de performance.
- WSL 2 utilise la technologie Hyper-V hypervisor intégrée à Windows.
Composants principaux de WSL
Pour comprendre comment WSL fonctionne en profondeur, il est important de connaître les composants centraux de WSL.
Le code qui alimente WSL est composé de différentes parties, certaines fonctionnant sous Windows et d'autres à l'intérieur de la machine virtuelle WSL 2.
- Exécutables en ligne de commande : Des outils comme
wsl.exe,wslconfig.exeetwslg.exesont les points d'entrée pour interagir avec WSL. - Le service WSL : Ce service Windows est responsable du démarrage de la machine virtuelle WSL, du lancement des distributions et de la gestion des partages d'accès aux fichiers.
- Processus Linux : Des binaires comme
init,gns(pour le réseau) etlocalhosts'exécutent dans l'environnement Linux pour fournir les fonctionnalités de base de WSL. - Serveur de fichiers Plan9 : Une implémentation fonctionnant sous Linux qui gère le partage de fichiers Linux afin qu'ils puissent être accessibles depuis Windows (par exemple, via
\\wsl.localhost).
En essence, WSL, en particulier WSL 2, fournit un environnement hautement intégré en combinant une machine virtuelle légère exécutant un véritable noyau Linux avec des composants et services côté Windows pour créer un flux de travail développeur fluide.
La mise en open source de parties importantes de WSL permet désormais à la communauté de contribuer directement à son développement.
Quelles parties de WSL sont désormais open source et lesquelles ne le sont pas ?
Maintenant, les éléments principaux de WSL sont open source. Microsoft a partagé le code de certaines parties très importantes.
Composants WSL qui ONT été rendus open source :
Plus précisément, le code du noyau Linux utilisé dans la dernière version, WSL 2, est maintenant public. Microsoft construit ce noyau eux-mêmes, ce qui le rend compatible avec Windows. De plus, le code principal de la plateforme WSL est open source.
Il y a aussi une partie appelée WSLg (Windows Subsystem for Linux GUI). C'est une fonctionnalité sympa qui vous permet d'exécuter des applications Linux avec des fenêtres et des boutons directement sur votre bureau Windows.
Vous pouvez même copier et coller facilement entre les applications Windows et Linux. Le code de WSLg est maintenant open source également.
La majeure partie de ce code est disponible sous la licence MIT. C'est une licence qui permet aux gens d'utiliser et de partager le code très librement.
Composants WSL qui n'ont PAS été rendus open source
Comme mentionné précédemment, tous les composants du Sous-système Windows pour Linux (WSL) n'ont pas encore été rendus open source à ce jour.
Lxcore.sys: Il s'agit du pilote côté noyau qui alimente WSL 1. Bien que WSL 2 soit l'architecture par défaut et recommandée, WSL 1 est toujours pris en charge et n'a pas été abandonné. Certains utilisateurs souhaitaient spécifiquement que cette partie soit ouverte.P9rdr.sysetp9np.dll: Ces composants exécutent la redirection de système de fichiers qui permet d'accéder aux fichiers Linux depuis Windows en utilisant le chemin\\wsl.localhost.
Ainsi, bien que des parties majeures comme la plateforme centrale, le noyau WSL 2 et le support GUI (WSLg) soient désormais ouverts, certains composants clés côté Windows, en particulier ceux liés à l’ancienne architecture WSL 1 et à la redirection d’accès aux fichiers de Windows vers Linux, restent pour l’instant propriétaires.
Avantages de WSL open source
Rendre WSL open source est très bénéfique pour plusieurs raisons :
- Plus d'yeux sur le code : Maintenant que tout le monde peut regarder le code, il est plus facile de repérer les problèmes ou de comprendre comment les choses fonctionnent.
- Pouvoir de la communauté : Les personnes qui utilisent WSL ont déjà beaucoup aidé en trouvant des bugs et en suggérant des fonctionnalités. Avec le code ouvert, elles peuvent maintenant aider directement à résoudre les problèmes et ajouter de nouvelles fonctionnalités.
- Progrès plus rapide : Déplacer le développement de WSL en dehors du système principal Windows et le rendre open source aide à mettre à jour plus rapidement.
WSL 2 lui-même a été une grande avancée lorsqu'il est sorti, utilisant une machine virtuelle légère pour s'assurer qu'il fonctionne exactement comme un vrai Linux. La mise en open source est une autre grande avancée.
Microsoft est vraiment enthousiaste à l'idée de voir comment la communauté peut aider WSL à devenir encore meilleur !
Réaction de la communauté
Cette nouvelle a déclenché de nombreuses conversations sur plusieurs forums de discussion et sur les réseaux sociaux !
Beaucoup de gens sont très heureux et excités. Ils le voient comme un excellent moyen de rendre WSL plus stable et d'ajouter des fonctionnalités. Certains développeurs disent que WSL est essentiel pour leur travail, leur offrant le meilleur à la fois de Windows et de Linux.
Cependant, certaines personnes restent cautieuses. Compte tenu de l'historique de Microsoft avec Linux, certains s'inquiètent de leurs véritables objectifs.
D'autres soulignent des problèmes, comme la lenteur parfois rencontrée pour travailler avec des fichiers Windows depuis WSL.
Certains trouvent également que le nom « Windows Subsystem for Linux » est un peu déroutant, suggérant que « Linux Subsystem for Windows » pourrait avoir plus de sens.
Lecture connexe : Installer le sous-système Windows pour Linux avec une seule commande
Conclusion
Rendre WSL open source est un événement majeur. Cela montre à quel point Microsoft a changé au fil des années.
En ouvrant le code de la plateforme principale WSL, du noyau WSL 2 et de WSLg, Microsoft invite tout le monde à aider à façonner l'avenir de l'exécution de Linux sur Windows.
Cela pourrait conduire à une expérience WSL meilleure, plus stable et plus riche en fonctionnalités pour tous ceux qui l'utilisent.
En effet, Microsoft aime Linux !
Ressource :
- Le sous-système Windows pour Linux est maintenant open source