17611538698
webmaster@21cto.com

微软正式开源 Windows 子系统 for Linux

资讯 0 35 18小时前
图片

导读:在2025年微软开发者大会Build 2025上,微软宣布正式开源Windows子系统Linux(WSL)。

微软于 5 月 20日宣布其 Windows Linux 子系统 (WSL) 开源,开放源代码供社区成员贡献。

自从近九年前推出适用于 Windows 10 的 WSL 以来,微软这几年来一直致力于开源这项在 Windows 中启用 Linux 环境的功能。

适用于 Linux 的 Windows 子系统。

WSL由一系列分布式组件构成,部分组件运行于Windows系统中,而另一些则运行在WSL 2的虚拟机内。主要的技术领域可以划分为:

  • 用户模式组件:这些组件负责管理和调度Linux分发版,包括文件系统、进程管理等。

  • 内核模式组件:包括WSL 2中的Linux内核,以及与Windows内核交互的关键驱动程序。

  • 虚拟机管理:处理WSL 2虚拟机的启动、运行和关闭等操作。

  • 网络和显示支持:为WSL 2提供与主机相同的网络环境和图形应用支持。


WSL的架构图

WSL最初在2016年的微软BUILD大会上宣布,并随Windows 10的周年更新发布。那时,WSL依赖于pico过程提供者lxcore.sys,使Windows能够原生运行ELF可执行文件,并在Windows内核中实现Linux系统调用。这个版本后来被称为“WSL 1”。

随着技术的发展,为了更好地兼容原生Linux,WSL 2应运而生,并于2019年首次公布。WSL 2引入了基于真正的Linux内核的技术,大幅提升了性能和兼容性。

WSL社区每年逐渐壮大,越来越多的功能被加入到系统中,如GPU支持、图形化应用支持(通过wslg)和systemd支持。为了更快地响应社区的需求和功能请求,2021年7月,微软将WSL从Windows代码库中分离出来,作为单独的软件包发布于Microsoft Store。这一新版本最初仅支持Windows 11,并标为预览版。

经过一段时间的开发和完善,2022年11月,WSL 1.0.0正式发布,支持Windows 10,并成为该新软件包的首个稳定版本。从那时起,WSL继续不断改进,最终迎来了一次重要的里程碑——WSL 2.0.0。该版本引入了诸多重要特性,如镜像网络、DNS隧道、Session 0支持、代理支持和防火墙支持等。

目前,最新版本的是WSL 2.5.7,自2018年7月以来已经发布了九页的GitHub更新记录,涵盖了许多改进和新功能。

Windows 首席执行官帕凡·德鲁穆里(Pavan Davuluri )表示说:“这是开发者社区一直以来的一致要求。这花了我们一些时间,因为我们需要重构操作系统,让 WSL 能够独立运行,这样我们才能将项目开源,让开发者能够做出贡献,然后我们再将这些贡献纳入 Windows 流程,并能够大规模交付。”

WSL 代码现已经在 GitHub 上公布,开发者们可以下载并从源代码构建,参与修复,甚至添加新功能。WSL 社区过去一直无法访问微软的源代码,但这并没有阻止他们多年来为 WSL 的改进做出贡献。

德鲁穆里还表示说,他现在预计开发者将利用这个开源项目来帮助提升 WSL 的性能,或将其更多地集成到 Linux 服务中。

微软此次开源行动是 WSL 的一个重要里程碑,它于 2016 年作为 Windows 10 周年更新的一部分推出。

“当时 WSL 基于一个微进程提供程序 lxcore.sys,这使得 Windows 能够原生运行 ELF 可执行文件,并在 Windows 内核中实现 Linux 系统调用,”微软高级软件工程师皮埃尔·布莱(Pierre Boulay)解释道。“随着时间的推移,我们逐渐意识到,实现与原生 Linux 最佳兼容性的最佳方式是依赖 Linux 内核本身。”

微软于 2019 年发布了 WSL 的第二个主要版本,最后又添加了 GPU 支持,并将该项目独立于 Windows 发行。“最终很明显,为了跟上不断增长的社区和功能请求,WSL 必须加快步伐,并与 Windows 分开发行,”布莱如此说道,“这就是为什么我们在 2021 年将 WSL 从 Windows 代码库中分离出来,并将其移至自己的代码库。” 在 Windows 11 的最新 24H2 更新中,微软已将 WSL 用户完全迁移到独立于 Windows 的软件包,而不是操作系统内置的 WSL 组件。

近年来,WSL 变化很大,微软此前还关闭了GitHub 上 WSL 代码库中提出的第一个问题,即“它会开源吗?” 

现在看起来答案是肯定的,而且这也是让 Windows 更加方便成为开发者的一部分。

“我们的目标很简单:我们希望 Windows 成为开发者的优秀开发平台,”布莱确定地说,“这才是真正的壮志雄心!”

WSL的GitHub 地址:https://github.com/microsoft/WSL

作者:手扶拖拉斯基

参考:

https://www.theregister.com/2025/05/19/microsoft_wsl_open_source/

https://www.theverge.com/news/669286/microsoft-windows-subsystem-for-linux-open-source

评论