为什么我无法看到使用ps的PID 0进程?

问题描述:

我知道进程0是UNIX中的交换过程,负责进程调度,但为什么我看不到它使用ps -ef?我怎么能看到它?为什么我无法看到使用ps的PID 0进程?

+1

是真的真的这是不是一种编程相关的问题。内核负责进程调度。 – 2011-12-13 17:57:16

+0

@Let_Me_Be:那么哪个进程具有PID 0?有没有? – Bruce 2011-12-13 18:02:56

+1

[Wikipedia](http://en.wikipedia.org/wiki/Process_identifier)表示进程0是* swapper *或* sched *,它是“内核的一部分而不是普通的用户模式进程”。据推测`ps`只显示用户模式进程。我的Ubuntu系统具有`/ proc/1`,但没有`/ proc/0`。 – 2011-12-13 18:11:45

您看不到pid 0,因为您正在使用的系统中不存在pid 0。

但是杀-0命令通常用来找出是否存在进程可能会导致对PID = 0

[[email protected]]# kill -0 0 && echo success 
success 
[[email protected]]# kill -0 777777 && echo success 
bash: kill: (777777) - No such process 

至少在CentOS 6.4