Основы операционной системы UNIX

       

Основные сигналы


Информация об основных сигналах представлена в табл. 18.

Таблица 18. Основные сигналы



Сигнал Стандартная обработка Значение
SIGTERM

15

Завершение процессаСтандартный сигнал, посылаемый для остановки процесса.
SIGHUP

1

Завершение процессаОтключился терминал (или закрыто терминальное окно). Сигнал посылается всем не фоновым процессам, связанным с соответствующей терминальной линией.
SIGKILL

9

Завершение процессаНе перехватываемый сигнал, позволяющий завершить любой процесс.
SIGILL

4

Завершение процесса и сброс образа памятиНа центральный процессор была послана запрещенная инструкция. Это могло быть следствием недопустимого перехода в машинном коде программы, например, попытки выполнить строку данных.
SIGTRAP

5

Завершение процесса и сброс образа памятиБыла установлена ловушка точки прерывания процесса. Этим управляет системный вызов ptrace, который полезен для отладки.
SIGFPE

8

Завершение процесса и сброс образа памятиБыла попытка выполнить запрещенную арифметическую операцию, например, взятие логарифма отрицательного числа или деление на 0.
SIGBUS

10

Завершение процесса и сброс образа памятиОшибка на шине ввода-вывода. Обычно это является результатом попытки выполнить чтение или запись вне границ памяти программы.
SIGSEGV

11

Завершение процесса и сброс образа памятиЭто нарушение сегментации - проклятие разработчиков программ! Оно означает, что вы попытались получить доступ к сегменту памяти запрещенным образом. Может быть, это было присваивание значения части сегмента кода или чтение из нулевого адреса.
SIGPIPE

13

Завершение процессаПрограмма попыталась выполнить чтение или запись в программный канал, другой конец которого уже завершил работу. Этот сигнал помогает завершить работу конвейера, когда одна из его команд дала сбой.
SIGALRM

14

Завершение процессаПрограммист может установить будильник, чтобы позволить вам в определенный момент времени выполнить какое-нибудь действие.
SIGCHLD

18

ИгнорируетсяСначала это был сигнал завершения работы дочернего процесса, но сейчас он означает изменение состояния дочернего процесса.
SIGTSTP

24

Остановка процессаЭто запрос от терминала на остановку процесса. Посылка этого сигнала процессу происходит при нажатии комбинации клавиш Ctrl-Z.
SIGCONT

25

ИгнорируетсяЭтот сигнал указывает процессу на возобновление его работы. Процессу посылается либо команда fg, либо bg, а командный интерпретатор выполняет внутренний системный вызов wait для привилегированного процесса, либо не выполняет его для фонового процесса.

Детальная информация о сигналах представлена на страницах справочного руководства signal.

Процесс с помощью системного вызова signal() может задать нестандартный обработчик любого сигнала, кроме SIGKILL (9).



Содержание раздела