Процессы в ОС Unix
Рисунок 4.2. Процессы в ОС Unix
Хотя на Рисунок 4.2. между процессами init и shell находятся еще два процесса, shell может считаться прямым потомком init, так как находящиеся между ними процессы завершаются при запуске потомка.
В других ОС может выстраиваться и более сложная иерархия системных процессов. Так, например, в OS/390 между ядром ОС и задачей (task - синоним процесса в терминах IBM) пользователя находятся еще задачи:
- управления разделом;
- системного дампа;
- управления командой START;
- инициатор (для пакетных задач) или LOGON (для интерактивных задач).
Эти задачи существуют параллельно и выполняют управление ресурсами на разных уровнях.
При завершении родительского процесса не обязательно завершаются все его потомки. Некоторые процессы могут продолжать выполнение даже после завершения их непосредственного предка. Предком таких осиротевших процессов обычно становится процесс, находящийся в корне всего дерева наследования. Такие процессы обычно применяются для выполнения каких-либо фоновых задач, например, для ожидания и обработки каких-то внешних событий, и за ними закрепилось название демоны (daemon).