Процесс init является обычным процессом операционной системы, однако он имеет некоторые особенности: его PID всегда равен 1, и процесс этот выполняется всё время, пока работает система.
В UNIX-системах init играет две важные роли:
· производит инициализацию системы — как правило, для работы запущенного ядра не достаточно, нужно смонтировать все файловые системы, загрузить дополнительные драйверы устройств, запустить демоны и т. п.;
· является родительским для всех процессов в системе — это является гарантией того, что в UNIX для любого процесса в любой момент времени будет существовать родительский процесс.
Рисунок 3.2. Пример иерархии процессов в UNIX
Это обеспечивается тем, что в UNIX процессы создаются с помощью последовательного ответвления (системный вызов fork), а изначальной точкой ветвления является init.
Как правило, процесс init запускается из исполняемого файла /sbin/init и работает с некоторыми специфическими особенностями в различных UNIX-системах. Рассмотрим классификацию современных версий UNIX с точки зрения инициализации системы.