SIGKILL ніколи не вдається вбити запущений процес, в цьому і справа. Існують інші сигнали, щоб дати додатку можливість реагувати.
Поведінка SIGINT, SIGTERM, SIGQUIT і SIGHUP за замовчуванням - це вбити програму. Однак програмам дозволяється встановлювати обробник цих сигналів. Отже, власне поведінка додатків, коли вони отримують ці сигнали, є питанням конвенції (якої кожна програма може чи не може дотримуватися), а не дизайну системи.
SIGINT - "найслабший" з партії. Її загальноприйняте значення - «зупинити те, що ти зараз робиш, і чекати подальшого введення користувача». Це сигнал, що генерується Ctrl+ Cв терміналі. Неінтерактивні програми, як правило, трактують це як SIGTERM.
SIGTERM - це "нормальний" сигнал вбивства. Це повідомляє програмі вийти чисто. Програмі може знадобитися час, щоб зберегти її стан, звільнити ресурси, такі як тимчасові файли, які в іншому випадку залишаться позаду тощо. Додаток, який не хоче перериватись під час критичної програми, може ігнорувати SIGTERM на деякий час.
SIGHUP - це приблизно те саме, що і SIGTERM з точки зору жорсткості, але він має певну роль, оскільки він автоматично надсилається програмам, що працюють в терміналі, коли користувач відключається від цього терміналу (етимологічно, тому що користувач підключався через телефонну лінію та модем повісив). SIGHUP часто мимовільний, на відміну від SIGTERM, який повинен бути надісланий явно, тому програми повинні намагатися зберегти свій стан на SIGHUP. SIGHUP також має зовсім інше загальноприйняте значення для програм , що не відносяться до користувачів ( демонів ), тобто перезавантажити їх конфігураційний файл.
SIGQUIT - це найсуворіший із невідомих сигналів. Він призначений для використання тоді, коли програма не поводиться, і тепер його потрібно вбити, а за замовчуванням традиційно він залишає основний файл дампа (сучасні системи, де більшість користувачів не знає, що основний файл, як правило, не створює їх за замовчуванням) . Програми можуть встановлювати обробник, але це має робити дуже мало (зокрема, не врятувати жоден стан), оскільки намір SIGQUIT повинен використовуватися, коли щось серйозно не так.
HUP
не обов'язково означає, що програма вийде. Деякі програми використовуютьSIGHUP
для перезавантаження конфігураційних файлів.SIGKILL
не вдається, а точніше, відкладається, коли процес перебуває у режимі безперебійного сну .