WSL 和开放源代码资源

适用于 Linux 的 Windows 子系统(WSL)现在是开放源代码。

支持 WSL 的代码在 GitHub 上提供:microsoft/WSL 版本

了解这意味着什么,如何下载 WSL、从源代码生成以及 WSL 组件的概述等。

组件概述

WSL 由一组分发组件组成。 有些在 Windows 中运行,有些在 WSL 2 虚拟机中运行。

WSL 体系结构概述图。

WSL 的代码可以分为以下主要区域:

  • 要与 WSL 交互的入口点是命令行可执行文件:wsl.exewslconfig.exewslg.exe。 这些是从 C:\\Windows\System32\wsl.exe>CreateProcess()中运行的进程。

  • 启动 WSL 虚拟机(VM)、启动已安装的 Linux 发行版、挂载文件共享访问等的 WSL 服务:wslservice.exe

  • Linux init 和守护进程,以及在 Linux 中运行的二进制文件用于提供 WSL 功能:init 用于启动,gns 用于网络连接,localhost 用于端口转发等。

  • 使用 WSL 的计划 9 服务器实现将 Linux 文件共享到 Windows: plan9

详细了解 WSL 开源文档站点中的每个组件: wsl.dev

这些其他开源组件支持 WSL 源代码:

以下组件仍然是 Windows 映像的一部分,目前不开放源代码:

  • Lxcore.sys:支持 WSL 1 的内核端驱动程序
  • P9rdr.sysp9np.dll:运行 \\wsl.localhost 文件系统重定向的组件(从 Windows 到 Linux)

有关开放源代码 WSL 背后的历史和社区的详细信息,请参阅来自 Microsoft 内部版本 2025 的博客公告: 适用于 Linux 的 Windows 子系统现在由皮埃尔·布莱(Pierre Boulay)开放源代码

请访问 GitHub 上的 WSL 存储库,参与贡献:[github.com/WSL]](https://github.com/microsoft/WSL/)。