wslhost.exe
Also called wslhost, wsl host, wsl interop host
Per-distribution interop host. It relays Windows-Linux I/O for a running distro. It is not WslService and it is not the hypervisor.
What you need to know
wslhost is the interop/host helper for a running distro.
wslhost.exe sits beside a live distribution so Windows and Linux can pass files, console I/O, and related interop. wslservice.exe coordinates all distributions. wslrelay.exe forwards ports and some stdio. Ending one host does not uninstall WSL.
- Safe?
- Yes, with a running distro
- Same as wslservice?
- No. This is interop for one distro
- Many copies?
- One helper per busy distro is common
What is wslhost.exe?
wslhost is the interop/host helper for a running distro. It is not wslservice.exe. WslService owns the session list. This process only helps I/O for a live instance.
What does it do?
It relays Windows-Linux I/O so Explorer, pipes, and interop calls reach that distro. It does not list distros (`wsl -l -v`) and it does not run Hyper-V management.
Why is it running?
A distribution is running and something on Windows is talking to it. Idle copies should exit after that distro stops.
Why are there multiple copies?
More than one wslhost.exe usually means more than one busy distro or interop session. That is not extra copies of WslService.
Is it safe?
Usually safe
A Microsoft wslhost in the WSL package is the interop helper. A wslhost.exe on the desktop is not. This is still not the WslService coordinator.
A legitimate copy normally runs from:
C:\Program Files\WindowsApps\MicrosoftCorporationII.WindowsSubsystemForLinux_*\wslhost.exe
- Expected publisher: Microsoft Corporation
- Tied to a running distribution, not the CLI
- Coordinator sibling: wslservice.exe
Can I end it?
That distro interop drops
Ending wslhost.exe can freeze file and console interop for that distro until WSL starts another host. WslService can stay running. wsl --shutdown is the supported full stop.
Can I remove it?
No
Do not delete wslhost.exe. Unregister a distro or uninstall WSL if you want fewer helpers. Leave the package folder alone.
Should it start with Windows?
A running distro starts it. It is not Startup Apps and it is not WslService.
Normal resource behavior
These are contextual labels, not universal averages.
- CPU
- Follows interop and file traffic for that distro
- Memory
- Small next to vmmemWSL
- Disk
- File interop can show disk here
- Network
- Port relay is wslrelay, not this host
File information
| Executable name | wslhost.exe |
|---|---|
| Common legitimate path | C:\Program Files\WindowsApps\MicrosoftCorporationII.WindowsSubsystemForLinux_*\wslhost.exe |
| Publisher | Microsoft Corporation |
| Signature expectation | Signed by Microsoft Windows |
Common problems
People end wslservice to silence one wslhost
That stops every distro. End the unused distro with wsl -t, or close the app using interop.
Explorer hang on \\wsl.localhost
This host is in that path. Restart the distro. Replacing wslrelay.exe does not fix 9P file interop.
Troubleshooting
Diagnose before you change anything destructive.
Match the copy to a distro, not to WslService
Process Explorer command line and parent. One busy Ubuntu is this article. The session 0 service is wslservice.exe.
wsl --shutdown only after you want every distro down
Then start one distro and see if a single wslhost returns. Do not delete the helper from WindowsApps.
Technical details
Technical details
| Image name | wslhost.exe |
|---|---|
| Role | Per-distro Windows-Linux interop host |
Sources and verification
Reviewed by Feex editorial. Last verified August 2026 Status: Feex Reviewed. How we research.
- Microsoft Learn: WSL file systems · Windows and Linux file interop in WSL
- Microsoft Learn: WSL architecture · Service, CLI, and helpers are different images
- Foxhole process map · First-party samples on Windows PCs. Not a lab benchmark.
Was this article useful?
A yes or no is enough. Pick a reason if you want, or add a short note.
Thanks. That helps us improve this page.