Linux PID 命名空间

Linux PID 命名空间

我有一个关于 Linux PID 命名空间中进程的 PID 数量的问题。

假设:(NS = 命名空间)

P1 (PID NS1) -> 克隆 -> P2 (PID NS2) -> 克隆 -> P3 (PID NS3)

P3 有多少个 PID?

我认为以下内容,但我不确定是否正确:

  • 一个用于 NS3
  • 主机一台
  • 一个用于 NS2
  • 一个用于 NS1

谢谢。

答案1

根据 PID 命名空间的定义,存在于命名空间中的进程在该命名空间中具有 PID,并且在每个祖先命名空间中都有一个(不同的,除非重合)PID。因此,NS3 中的进程有 4 个不同的 PID:一个在 NS3 中、一个在 NS2 中、一个在 NS1 中、一个在根命名空间中。

有一个好的Michael Kerrisk 在 LWN 上发布的有关命名空间的系列文章——特别阅读第 3 部分:PID 命名空间第 4 部分:有关 PID 命名空间的更多信息

相关内容