在刚刚结束的 Build 2025 开发者大会上,微软宣布了一项重磅决策:备受关注的 “Windows Subsystem for Linux(WSL)” 项目将开源。

现在,开发者们可以通过 GitHub 自由访问 WSL 的源代码,甚至可以参与到项目的开发中,提交自己的建议和改进。
https://github.com/microsoft/WSL
WSL 自 2016 年首次推出以来,便成为了跨平台开发者的得力助手。它让用户能够在 Windows 系统上直接运行 Linux 环境,省去了繁琐的虚拟机设置或双系统引导的麻烦。
顺应社区呼声,推动技术发展
多年来,微软一直致力于将 Windows 打造为开发者的首选平台。WSL 的开源,正是微软在这一道路上的重要里程碑。自 WSL 项目启动以来,“WSL 会开源吗?” 这个问题就一直萦绕在开发者的心头。如今,微软用实际行动给出了肯定的答案。
微软 Windows 与设备部门副总裁 Pavan Davuluri 表示:“这是开发者社区长期以来的需求。我们花费了一些时间,对操作系统进行了重构,让 WSL 能够独立运行,从而实现开源,让开发者能够贡献代码,并将这些贡献纳入 Windows 的开发流程中。”
此次开源行动覆盖了 WSL 的绝大多数组件,开发者现在可以在 GitHub 上的 microsoft/WSL 存储库中找到构成 WSL 的主要组件的源代码。这些组件包括:
- 命令行工具:如 wsl.exe、wslconfig.exe 和 wslg.exe,它们是用户与 WSL 交互的入口点。
- WSL 服务(wslservice.exe):负责启动 WSL 虚拟机、启动分发、装载文件访问共享等的后台服务。
- Linux 端守护程序和初始化进程:用于在 Linux 环境中提供 WSL 功能的二进制文件,如网络(gns)、端口转发(localhost)和启动处理(init)。
- Plan9 文件服务器实施:允许 Windows 访问 Linux 文件(通过 \wsl.localhost和 \wsl$)的一些组件。
这些开源组件是对已经开源的 WSL2-Linux-Kernel(WSL2 使用的 Linux 内核的源代码)和 wslg(Wayland 和 X 服务器的 GUI 应用程序支持)的补充。
不过,目前仍有两个部分暂时保留闭源状态:lxcore.sys(WSL1 所依赖的内核驱动程序)和 p9rdr.sys 与 p9np.dll(负责将 Windows 文件系统重定向至 Linux 的模块)。微软并未排除未来将这两部分也一并开源的可能,但目前尚未给出明确的时间表。
从诞生到开源的蜕变
WSL 的发展历程充满了创新与突破。2016 年,WSL 首次在 Windows 10 周年更新中亮相,它基于 lxcore.sys 的 pico 进程提供程序技术,通过将 Linux 系统调用转换为 Windows 内核可以理解的方式,以 ELF 格式本机执行 Linux 可执行文件,让开发者能够直接在 Windows 上使用 Bash shell 和 Linux 命令行工具。
随着开发者对 Linux 兼容性需求的不断提高,微软在 2019 年发布了 WSL 2。WSL 2 采用了在轻量级虚拟机上运行完整 Linux 内核的架构,实现了完全的系统调用兼容性,显著提高了文件 I/O 性能,并随后支持 GPU 计算和 GUI 应用程序。
近年来,微软对 WSL 进行了大规模重构,使其从 Windows 核心中解耦,成为独立应用程序。在 Windows 11 24H2 更新中,WSL 已改为通过应用商店分发的独立包,而非系统内置组件,这一转变为 WSL 的开源奠定了基础。
更多自由,更大创新空间
WSL 的开源让开发者现在可以深入了解 WSL 的源代码,自行构建和自定义 WSL 以满足特定需求。同时,整个社区可以直接为 WSL 的质量提升和功能增强做出贡献,提出 Bug 修复和新功能建议。
微软高级软件工程师 Pierre Boulay 表示:“我们已经看到社区为 WSL 做出了很大贡献,即使他们无法访问源代码,我们非常高兴看到 WSL 现在如何发展,因为社区可以直接贡献代码。” 通过开源,开发者们可以在全球范围内共同协作,分享各自的解决方案和最佳实践,形成一个良性循环,推动整个技术生态的繁荣。
随着 WSL 的开源,我们有理由期待 Windows 与 Linux 的集成将提升到一个新的水平,开发者体验也将得到显著改善。目前,WSL 生态系统正在稳步扩展,Fedora 和 Arch Linux 已作为 WSL 发行版得到官方支持。
微软去年还宣布了相关更改,以便更轻松地构建新的 WSL 发行版。可以预见,随着软件的开源,未来 Windows 上将提供更多样化的 Linux 环境。
对于开发者来说,现在是体验 WSL 的最佳时机。您只需打开命令提示符或 PowerShell,键入 wsl –install,即可安装 WSL 以及默认的 Ubuntu 发行版。
您还可以从 Microsoft Store 选择并安装自己喜欢的 Linux 发行版,如 Ubuntu、Debian、Fedora、Arch Linux 等,甚至可以同时安装多个发行版,并根据项目需求在它们之间灵活切换。使用 wsl –list –online 命令,您可以查看微软官方支持的发行版列表。
让我们共同期待 WSL 的未来发展,见证 Windows 与 Linux 融合的新篇章!
https://blogs.windows.com/windowsdeveloper/2025/05/19/the-windows-subsystem-for-linux-is-now-open-source/