Changes

Jump to: navigation, search

Init vs systemd

343 bytes added, 14:22, 6 February 2012
no edit summary
== The Old Way: init ==
Upon computer boot-up, and after the Kernel process is started, it traditionally launched the '''init'''process (usually Process ID #: PID 1). This important process manages (launches) other common services. The init process also has the ability to manage process (for example, respawing or "restarting" processes if they are terminated for some reason).
In many ways, the init process is the "ancestor process" and any process that is currently running on the Unix/Linux system is either directly or indirectly related to the init process.
Traditionally, the init program would run default processes that were defined in "shell scripts" contained in appropriate '''run-level''' directory. The run level is a defined state that the Unix/Linux system is currently in (for example, graphical-mode, text-based mode with networking, text-based mode without networking, etc).
 
== Why Switch to systemd? ==
 
Why switch to systemd when the concept of init and run levels seemed to work for 40 years! If it isn't broke, why try to fix it?
Yes, the concept is very easy to understand. On the other hand, with modern operating systems, there is pressure to "evolve" into more efficent running operating systems. For example, in many ways both Apple creators and Unix/Linux creators have influenced each other to build better operating systems over the past decade. The Apple Mac OSX operating system uses a variation of the Unix kernel. On the other hand, Unix/Linux developpers have noticed Apple's method of running services in parallel as opposed to in sequence.
Yes, the concept is very easy to understand. On the other hand, with modern operating systems, there is pressure to "evolve" into more efficent running operating systems.
13,420
edits

Navigation menu