При входе в систему пользователь вводит свое имя и пароль в программу входа (login). Если эта программа получает верную пару, состоящую из логина и пароля, то login порождает пользовательскую оболочку входа, также указываемую в /etc/passwd, и делает uid оболочки равным uid вошедшего пользователя
завершенного процесса. Когда родительский процесс обслужит дочерний, последний полностью удаляется. Процесс, который уже завершился, но еще не был обслужен, называется зомби. Инициализирующий процесс по порядку обслуживает все свои дочерние процессы, гарантируя, что процессы с переназначенными родителями не останутся в состоянии зомби на неопределенный срок.
идентификации каждого процесса применяется уникальное положительное целое число, называемое идентификатором процесса, или ID процесса (pid). Таким образом, первый процесс имеет идентификатор 1, а каждый последующий процесс получает новый, уникальный pid.
В Linux процессы образуют строгую иерархию, называемую деревом процессов. Корень дерева находится в первом процессе, называемом процессом инициализации и обычно принадлежащем программе init. Новые процессы создаются с помощью системного вызова fork(). В результате этого вызова создается дубликат вызывающего процесса. Исходный процесс называется предком, а порожденный — потомком. У каждого процесса, кроме самого первого, есть свой предок. Если родительский процесс завершается раньше дочернего (потомка), то ядро переназначает предка для потомка, делая его потомком процесса инициализации.
Когда процесс завершается, он еще какое-то время остается в системе. Ядро сохраняет фрагменты процесса в памяти, обеспечивая процессу-предку доступ к информации о процессе-потомке, актуальной на момент завершения потомка. Такое запрашивание называется обслуживанием