I'm looking for the process started in Linux which has process ID 0. I know
init has PID 1 , which is the first process in Linux, is there any process with PID 0?
From the wikipedia page titled: Process identifier:
There are two tasks with specially distinguished process IDs: swapper or sched has process ID 0 and is responsible for paging, and is actually part of the kernel rather than a normal user-mode process. Process ID 1 is usually the init process primarily responsible for starting and shutting down the system. Originally, process ID 1 was not specifically reserved for init by any technical measures: it simply had this ID as a natural consequence of being the first process invoked by the kernel. More recent Unix systems typically have additional kernel components visible as 'processes', in which case PID 1 is actively reserved for the init process to maintain consistency with older systems.
You can see the evidence of this if you look at the parent PIDs (PPID) of
$ ps -eaf UID PID PPID C STIME TTY TIME CMD root 1 0 0 Jun24 ? 00:00:02 /sbin/init root 2 0 0 Jun24 ? 00:00:00 [kthreadd]
kthreadd is the kernel thread daemon. All kthreads are forked from this thread. You can see evidence of this if you look at other processes using
ps and seeing who their PPID is:
$ ps -eaf root 3 2 0 Jun24 ? 00:00:57 [ksoftirqd/0] root 4 2 0 Jun24 ? 00:01:19 [migration/0] root 5 2 0 Jun24 ? 00:00:00 [watchdog/0] root 15 2 0 Jun24 ? 00:01:28 [events/0] root 19 2 0 Jun24 ? 00:00:00 [cpuset] root 20 2 0 Jun24 ? 00:00:00 [khelper]
Notice they're all
protected by Community♦ May 6 '16 at 22:45
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?