Описание тега signal
Сигналы являются своего рода межпроцессным взаимодействием в Unix-подобных операционных системах, включая Ubuntu.
Некоторые сигналы могут обрабатываться или игнорироваться программой, которая их получает, если она предназначена для этого. Другие неизменно прекращают программу.
kill
, killall
, а также pkill
Команды посылают сигналы. По умолчанию они отправляют SIGTERM, что позволяет программе выполнить очистку. Команды как kill -KILL
или эквивалент kill -9
Отправь SIGKILL, который нельзя игнорировать.
Когда программы аварийно завершают работу, они завершаются сигналом, обычно SIGSEGV ("Ошибка сегментации") или SIGABRT. Нажатие Ctrl+C в терминале отправляет SIGINT. Это завершает большинство неинтерактивных программ (и программ, взаимодействие которых не в терминале, таких как серверы и графические приложения). Большинство интерактивных программ, особенно оболочек, отменяют текущую операцию и возвращают пользователя в основное (то есть самое внешнее) приглашение программы при получении SIGINT.
Сигналы SIGUSR1 и SIGUSR2 традиционно используются для обеспечения ограниченной интерактивности с другими неинтерактивными программами. С помощью kill -USR1
на бегу dd
Процесс запроса его статуса был когда-то очень распространенным, так как dd
распечатывает эту информацию, когда получает SIGUSR1. Но status=progress
аргумент передан dd
популярность возросла с тех пор, как стала доступной.
Есть множество других сигналов, не суммированных выше.
Большинство раковин в стиле Борна, в том числе bash
предоставить функцию для обработки сигналов в сценарии оболочки (или в интерактивном сеансе оболочки). trap
команда регистрирует обработчики сигналов.
Сигнальная метка может использоваться для вопросов о том, как использовать, отправлять и обрабатывать сигналы; проблемы, которые, кажется, вовлекают сигналы важным способом; и ситуации, в которых используются сигналы.
Термин "сигнал" также используется в различных других значениях. Например, есть приложение для безопасного обмена сообщениями, которое называется "Сигнал". Существует также понятие "сила сигнала" в беспроводной сети и программно-определяемой радиосвязи. Какие именно теги следует использовать вместо этих вещей, а также когда следует использовать сигнал, уничтожение или и то, и другое, не представляется полностью установленным.