Skip to content
WSL

How WSL Actually Works: From Translation Layer to Real Kernel

WSL's history and boot lifecycle, how it bridges two filesystems and lets Linux and Windows executables call each other, its networking modes, and the memory behavior (vmmem) that confuses almost everyone at first.

9 posts, in order

  1. 1HistoryThe History of WSL: From a Cancelled Android Project to a Real Linux KernelWSL's path from a cancelled Android-compatibility project through syscall translation to a genuine, Microsoft-maintained Linux kernel in a lightweight VM.
  2. 2How-ToHow to Install WSL on WindowsGetting WSL2 and a Linux distro running from a clean Windows install using the single-command path, plus what to check if it doesn't work the first time.
  3. 3Deep DiveWSL 2 Boot Lifecycle: From wsl.exe to the Utility VM and Distribution initWhat starts when the first Linux process launches in WSL 2, which configuration is read at each stage, and why a distro can fail before the shell even appears.
  4. 4Deep DiveHow WSL Bridges Two Completely Different FilesystemsWSL's cross-OS file access translates between Linux and Windows filesystem semantics at the protocol level, and that translation has a real performance cost.
  5. 5Deep DiveWSL2's Networking Modes: NAT and Mirrored, ExplainedWSL2's original NAT networking isolates it from your LAN by default; mirrored mode, added later, takes a fundamentally different approach with real tradeoffs.
  6. 6Deep DiveHow WSL Lets Linux and Windows Executables Call Each OtherThe specific interop layer that lets a WSL shell launch Windows executables and Windows shells launch Linux commands, translating paths and streams both ways.
  7. 7Deep DiveHow WSL2 Actually Manages Memory (and Why vmmem Grows)WSL2's VM claims memory dynamically as Linux needs it and has historically been slow to release it back, plus what .wslconfig actually lets you control.
  8. 8Deep DiveHow WSLg Gets a Linux GUI Window Onto Your Windows DesktopWSLg runs a real Wayland compositor and audio server inside WSL, remoting individual application windows to Windows over RDP's RAIL protocol.
  9. 9FixFixing High vmmem Memory Usage in WSL2Diagnosing whether high vmmem usage is a genuine leak or reclaimable page cache, and setting a deliberate .wslconfig memory ceiling that actually fits your workload.