SIGNAL(7)

ИМЯ
signal - список доступных сигналов

ОПИСАНИЕ
Linux поддерживает нижеописанные сигналы. Некоторые номера сигналов зависят от используемой архитектуры. Сначала идут сигналы, описанные в стандарте POSIX.1.

Сигнал | Значение | Действие | Описание
SIGHUP | 1 | A | Обнаружен обрыв связи с управляющим терминалом
 |  |  | либо завершение управляющего процесса
SIGINT | 2 | A | Прерывание с клавиатуры
SIGQUIT | 3 | C | Выход с клавиатуры
SIGILL | 4 | C | Несуществующая инструкция
SIGABRT | 6 | C | Сигнал прерывания, посланный функцией abort(3)
SIGFPE | 8 | C | Ошибка операций с плавающей запятой
SIGKILL | 9 | AEF | Kill-сигнал
SIGSEGV | 11 | C | Обращение к запретной области памяти
SIGPIPE | 13 | A | Оборванный канал: запись в канал, из которого не читают
SIGALRM | 14 | A | Сигнал таймера от функции alarm(2)
SIGTERM | 15 | A | Сигнал завершения
SIGUSR1 | 30,10,16 | A | Первый сигнал, определяемый пользователем
SIGUSR2 | 31,12,17 | A | Второй сигнал, определяемый пользователем
SIGCHLD | 20,17,18 | B | Потомок остановлен или прекратил выполнение
SIGCONT | 19,18,25 |  | Продолжить выполнение, если остановлен
SIGSTOP | 17,19,23 | DEF | Приостановить выполнение процесса
SIGTSTP | 18,20,24 | D | Останов введен с терминала
SIGTTIN | 21,21,26 | D | ввод с терминала у фонового процесса
SIGTTOU | 22,22,27 | D | вывод на терминал у фонового процесса
Следующие сигналы не входят в стандарт POSIX.1, но описаны в SUSv2.

Сигнал | Значение | Действие | Описание
SIGBUS | 10,7,10 | C | Ошибка шины (ошибка доступа к памяти)
SIGPOLL |  | A | Ожидаемое событие (Sys V). Синоним SIGIO
SIGPROF | 27,27,29 | A | Закончилось время профилирующего таймера
SIGSYS | 12,-,12 | C | Неправильный аргумент процедуры (SVID)
SIGTRAP | 5 | C | Трассировка/ловушка
SIGURG | 16,23,21 | B | Неотложное событие в сокете (4.2 BSD)
SIGVTALRM | 26,26,28 | A | Виртуальный будильник (4.2 BSD)
SIGXCPU | 24,24,30 | C | Лимит процессорного времени исчерпан (4.2 BSD)
SIGXFSZ | 25,25,31 | C | Лимит на размер файла исчерпан (4.2 BSD)
(Для случаев SIGSYS, SIGXCPU, SIGXFSZ, а для некоторых архитектур -- и SIGBUS, Linux (до настоящего времени -- 2.3.40) по умолчанию производит действие A (завершение выполнения), тогда как SUSv2 предписывает делать C (завершить выполнение с записью дампа памяти).) Дальше идут различные прочие сигналы.

Сигнал | Значение | Действие | Описание
SIGIOT | 6 | C | IOT-ловушка. Синоним для SIGABRT
SIGEMT | 7,-,7 |
SIGSTKFLT | -,16,- | A | Переполнение стека сопроцессора
SIGIO | 23,29,22 | A | I/O теперь возможно (4.2 BSD)
SIGCLD | -,-,18 |  | Синоним для SIGCHLD
SIGPWR | 29,30,19 | A | Авария питающего напряжения (System V)
SIGINFO | 29,-,- |  | Синоним для SIGPWR
SIGLOST | -,-,- | A | Потеря файла блокировки
SIGWINCH | 28,28,20 | B | Изменение размеров окна (4.3 BSD, Sun)
SIGUNUSED | -,31,- | A | Неиспользуемый сигнал (в будущем будет SIGSYS)
(Здесь - является признаком того, что сигнал отсутствует; там, где приведено три значения, первое -- для архитектур alpha и sparc, второе для архитектур i386, ppc и sh, последнее для mips. 29-й сигнал -- это SIGINFO / SIGPWR для alpha, но SIGLOST для sparc.)

Буквы в колонке "Действие" имеют следующее значение:

A   Действие по умолчанию -- прекращение выполнения процесса.

B   Действие по умолчанию -- игнорировать сигнал.

C   Действие по умолчанию -- прекращение выполнения процесса и запись дампа памяти.

D   Действие по умолчанию -- приостановка выполнения процесса.

E   Сигнал не может быть перехвачен.

F   Сигнал не может быть проигнорирован.

СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1

ОШИБКИ
SIGIO и SIGLOST имеют одинаковое значение. Последний закомментирован в исходниках ядра, но некоторые программы продолжают думать, что 29-й сигнал -- это SIGLOST.

СМОТРИ ТАКЖЕ
kill(1), kill(2), setitimer(2)

ПЕРЕВОД
Перевел с английского Алексей Миллер <asm@asm.kiev.ua> 2000