Linux Today: Linux News On Internet Time.

Rethinking PID 1

May 03, 2010, 11:04 (10 Talkback[s])

"Process Identifier 1

"On every Unix system there is one process with the special process identifier 1. It is started by the kernel before all other processes and is the parent process for all those other processes that have nobody else to be child of. Due to that it can do a lot of stuff that other processes cannot do. And it is also responsible for some things that other processes are not responsible for, such as bringing up and maintaining userspace during boot.

"Historically on Linux the software acting as PID 1 was the venerable sysvinit package, though it had been showing its age for quite a while. Many replacements have been suggested, only one of them really took off: Upstart, which has by now found its way into all major distributions.

"As mentioned, the central responsibility of an init system is to bring up userspace. And a good init system does that fast. Unfortunately, the traditional SysV init system was not particularly fast.

"For a fast and efficient boot-up two things are crucial:

* To start less.
* And to start more in parallel.

"What does that mean? Starting less means starting fewer services or deferring the starting of services until they are actually needed."

Complete Story

Related Stories: