WSL/doc/docs/technical-documentation/plan9.md
WSL Team 697572d664 Initial open source commit for WSL.
Many Microsoft employees have contributed to the Windows Subsystem for Linux, this commit is the result of their work since 2016.

The entire history of the Windows Subsystem for Linux can't be shared here, but here's an overview of WSL's history after it moved to it own repository in 2021:

Number of commits on the main branch: 2930
Number of contributors: 31

Head over https://github.com/microsoft/WSL/releases for a more detailed history of the features added to WSL since 2021.
2025-05-15 12:09:45 -07:00

968 B

Plan 9

Plan9 is a linux process that hosts a plan9 filesystem server for WSL1 and WSL2 distributions. It's created by init in each distribution.

WSL 1

In WSL1 distributions, plan9 serves its filesystem through a unix socket, which can then be connected to from Windows.

WSL2

In WSL2 distributions, plan9 runs its filesystem through an hvsocket

Accessing the distribution files from Windows

From Windows, a special redirector driver (p9rdr.sys) registers both \\wsl$ and \\wsl.localhost. When either of those paths are accessed, p9rdr.sys calls wslservice.exe to list the available distributions for a given Windows users.

When a distribution path is accessed (like \\wsl.localhost\debian), p9rdr.sys calls into wslservice.exe via COM to start the distribution, and connect to its plan9 server, which allows the files to be accessed from Windows.

See src/linux/init/plan9.cpp