我在 WSL 中看到的这个名为“plan9”的奇怪过程是什么?

Zek*_*el7 22 process windows-subsystem-for-linux wsl2

我在 Windows 11 上将 WSL2 与 Ubuntu 一起使用,并且有一个奇怪的进程,名为plan9I see with htop

这是它的图片。

截屏。

ps ax输出:

4 ?        Sl     0:00 plan9 --control-socket 5 --log-level 4 --server-fd 6 --log-truncate
Run Code Online (Sandbox Code Playgroud)

谁能解释那是什么?我在互联网上没有找到任何相关内容。

Not*_*1ds 8

这是一个非常好的问题——我还没有注意到这一点,但我已经有几天没有升级 WSL 了。这是最新 WSL 版本中最近发生的更改(上周)。

正如评论中提到的,WSL 使用 9P 协议在 Windows 和 WSL 之间共享文件。但是,此过程仅从 WSL 0.70.4开始出现。尽管 0.70.4 发行说明中没有提及任何内容,但 0.70.5 说明中提到修复(很可能)此组件中的竞争条件。

它肯定是由 WSL 本身注入的,因此无需担心,但最好知道其目的是什么,因为它是新的。我能想到的几种理论:

  • 这与最近 WSL 中 Systemd 的更改有关。
  • 此更改修复了 WSL 问题 - 尽管我没有在 WSL GitHub 存储库中看到最近关闭的任何 9P 问题。
  • 此更改可能旨在让 WSL 团队更好地控制 9P 组件的更改,其中以前的版本可能与 Windows 组件/功能相关联。
  • 这一更改(希望如此!)将使 WSL 团队能够在通过 WSL2 访问 Windows 文件时提高 9P 的性能。极差性能是使用 WSL1 而不是 WSL2 的少数原因之一(当需要该功能时)。我在 0.70.5 下对此进行了测试,这一更改肯定不会提高性能,但也许它为将来的更新奠定了基础。

但是,在微软的人告诉我们更多信息之前,这些都只是理论。