共用方式為


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) 的 WSL 服務會啟動已安裝的 Linux 發行版、掛接檔案共用等等:wslservice.exe

  • Linux init 和精靈進程、在 Linux 中執行的二進位檔,以提供 WSL 功能: init 用於啟動、 gns 用於網路、 localhost 用於埠轉送等。

  • 使用 WSL 的 Plan9 伺服器實現將 Linux 檔案共用至 Windows:plan9

在 WSL 開放原始碼文件網站深入瞭解每個元件: wsl.dev

這些額外的開放原始碼元件支援 WSL 原始碼:

下列元件仍然是 Windows 映射的一部分,目前並未開放原始碼:

  • Lxcore.sys:支援 WSL 1 的核心端驅動程式
  • P9rdr.sysp9np.dll:執行檔案系統重新導向的 \\wsl.localhost 元件(從 Windows 到 Linux)

如需開放原始碼 WSL 背後的歷史和社群的詳細資訊,請參閱來自 Microsoft Build 2025 的部落格公告: Windows 子系統 Linux 現在由皮埃爾·布萊開放原始碼

請造訪 GitHub 上的 WSL 存放庫以參與: microsoft/WSL