Оболонки управління роботою постійно маніпулюють сеансами або обробляють групи. Ви можете надіслати один і той же сигнал усім процесам у групі процесів одним викликом kill()
функції POSIX .
Стандарт POSIX говорить:
Якщо pid більше 0, sig повинен бути надісланий процесу, ідентифікатор процесу якого дорівнює pid.
Якщо pid дорівнює 0, sig має надсилатися всім процесам (за винятком невстановленого набору системних процесів), ідентифікатор групи процесів яких дорівнює ідентифікатору групи процесів відправника, і для яких процес має дозвіл надсилати сигнал.
Якщо pid дорівнює -1, sig має надсилатися всім процесам (крім невизначеного набору системних процесів), для яких процес має дозвіл надсилати цей сигнал.
Якщо pid від’ємний, але не -1, sig повинен надсилатися всім процесам (за винятком невстановленого набору системних процесів), ідентифікатор групи процесів яких дорівнює абсолютному значенню pid, і для яких процес має дозвіл надсилати сигнал .
Наприклад, коли оболонка входу виходить із системи, сигнал SIGHUP надсилається всім програмам у її групі процесів.
Коли ви маніпулюєте програмами на передній або задній план, ви використовуєте групи процесів.
Є також контрольні термінали, про які слід турбуватися; сигнали, що генеруються контрольним терміналом, можуть надсилатися всім програмам групи процесів.