我想知道它是什么kthread
以及为什么它不占用任何内存并且没有打开的文件。我编写了一些代码,它们将简单地以父子树格式打印当前正在运行的进程的 PID,以及一些附加信息,如使用的 VMZ、RSS、线程、openfiles。名为 PID 2 的所有子项kthreadd
在文件中都没有 VmSize 和 VmRSS /proc/[pid]/status
。/proc/[pid]/fd
不包含任何打开的文件。
这些进程是什么,它们与由 init (PID 1) 生成的正常进程有何不同。我(在一本旧书中)读到交换器将产生 init PID1,所有其他进程都是 PID 1 的子进程。这背后肯定有不同的架构(Linux 内核 3.7.10.1-16),我不知道,所以另一个问题是为什么 PID 2 是 PID 0 的孩子而不是 PID 1 的孩子。