1. Хотя пользователь войти в один процесс (оболочка, которая является их интерфейс командной строки), пользователи в конечном итоге работает много процесса в результате действия, как:
-> выполнение неинтерактивной задачи в фоновом режиме.
-> переключение между интерактивным задач через работу.
-> запуск нескольких процессов, которые работают вместе через трубы.
- > идущая система windowing как система окна X которые позволяют множественным терминальным окнам к открытый.
2. Для того, чтобы обработать все эти процессы, ядро должно сформировать группы процессов, состоящие из этих процессов.
3. Чтобы управлять этими группами процессов далее в соответствии с пользователем, эти группы делятся в соответствии с пользователем на сеансы.(Примечание здесь пользователь не является пользователем linux, но оболочка или терминал означает пользователя. Два терминала на одной машине, вошедшие в систему одним и тем же пользователем linux, означают 2 разных пользователя и, следовательно, 2 разных сеанса пользователя здесь. Стержень может контролировать терминал только для одного сеанса).
процесс, выполняющий оболочку для этого "пользователя" или сеанса называется лидером сеанса.
4. Также обратите внимание на закрытие терминала, нажав кнопку " x " не делают вас из этого терминала. Что терминал продолжает работать в фоновом режиме. Если вы хотите, чтобы по сессии из терминала, вы должны выйти оттуда, нажав CTRL + D или exit.
5. При выходе из терминала ядро посылает сигнал SIGHUP (аналогично kill -1) для обработки это сессионный лидер. Теперь любой другой процесс, запущенный в терминале, является дочерним для данного лидера сессии. Эти дочерние процессы сформировали группы процессов, которые управляются этим процессом лидера сеанса (родительским процессом).
6. Процесс лидера сеанса отправляет SIGHUP каждому дочернему процессу, некоторый процесс завершается, в то время как некоторые могут не завершаться(приостановленные или работающие в фоновом режиме). Те выбирают не прекратить осиротеть как overs встречи и немедленно принятый мимо init процесс (родитель всех процессов в linux машине).
Для больше, см. ссылку модель процесса разработки Linux