QNX/UNIX: Анатомия параллелизма
Шрифт:
•
SIGEMT [7]
— ЕМТ-инструкция (emulator trap). Как видно из сравнения с предыдущим сигналом, у них один код, то есть в QNX SIGDEADLK
и SIGEMT
— это один сигнал. •
SIGFPE (+) [8]
— недопустимая арифметическая операция с плавающей точкой (floating point exception). •
SIGHUP [1]
— сигнал освобождения линии, разрыв связи с управляющим терминалом (hangup signal). Посылается всем процессам, подключенным к управляющему терминалу при отключении терминала (обычно управляющий терминал группы процесса является
•
SIGILL [4]
— попытка выполнения недопустимой инструкции процессора (illegal instruction); обработка сигнала не сбрасывается, когда он перехватывается. •
SIGINT (-) [2]
— принудительное прерывание процесса (interrupt); это тот сигнал, который генерируется при нажатии [Ctrl+C]. Это обычный способ завершения выполняющегося процесса. •
SIGKILL (+) [9]
— уничтожение процесса (kill); этот сигнал может активизироваться командой kill -9 <PID>
. Это сигнал безусловного завершения, посылаемый процессу другим процессом или системой (при завершении работы системы). Этот сигнал не может быть проигнорирован или перехвачен. •
SIGPIPE [13]
— попытка выполнить недопустимую запись в канал или сокет, для которых принимающий процесс уже завершил работу (write on pipe or socket when recipient is terminated, write on pipe with no reader). •
SIGPOLL [22]
— сигнал уведомления об одном из опрашиваемых событий (pollable event). Этот сигнал генерируется системой, когда некоторый открытый дескриптор файла готов для ввода или вывода. Этот сигнал имеет синоним (наименование SIGPOLL
более известно из UNIX System V):
#define SIGIO SIGPOLL
•
SIGPROF [29]
— сигнал профилирующего таймера (profiling timer expired). Как и сигнал SIGALRM
, этот сигнал возбуждается по истечении времени таймера (но это другой таймер), который используется для измерения времени выполнения процесса в пользовательском и системном режимах (таймер устанавливается заданием первого параметра setitimer
, равным ITIMER_PROF
). •
SIGQUIT (-) [3]
— выход из процесса (quit). •
SIGSEGV (+) [11]
— обращение к некорректному адресу памяти, ошибка защиты памяти, нарушение границ сегмента памяти (invalid memory reference, segmentation violation). •
SIGSTOP [23]
— временная остановка процесса (sendable stop signal not from tty). Если пользователь вводит с терминала [Ctrl+Z], то активному процессу посылается этот сигнал и процесс приостанавливается. Позже процесс может быть возобновлен с точки остановки при получении сигнала SIGCONT
. Этот сигнал нельзя проигнорировать или перехватить. •
SIGSYS (+) [12]
— некорректный системный вызов (invalid system call, bad argument to system call). •
SIGTERM [15]
— программный сигнал завершения (software termination signal from kill). Программист может использовать этот сигнал для того, чтобы дать процессу время для «наведения порядка», прежде чем посылать ему сигнал SIGKILL
. Именно этот сигнал посылается по умолчанию командой kill
без параметра, указывающего сигнал. •
SIGTRAP [5]
— сигнал трассировочного прерывания (trace trap). Это особый сигнал, который в сочетании с системным вызовом ptrace
используется отладчиками: sdb, adb, gdb. По умолчанию сигнал приводит к аварийному завершению. Обработка сигнала не сбрасывается, когда он перехватывается. •
SIGTSTP [24]
— терминальный сигнал остановки (terminal stop signal). Генерируется при нажатии специальной комбинации остановки [Ctrl+Z]. Аналогичен сигналу SIGSTOP
, но, в отличие от последнего, может быть перехвачен или проигнорирован. •
SIGTTIN [26]
— остановка фонового процесса, если он пытается прочитать данные со своего управляющего терминала (background process attempting read). •
SIGTTOU [27]
— остановка фонового процесса, если он пытается писать данные на свой управляющий терминал (background process attempting write). •
SIGURG [21]
— сигнал о поступлении в буфер сокета срочных (приоритетных) данных (high bandwidth data is available at a socket, urgent condition on I/O channel) уведомляет процесс, что по открытому им сетевому соединению получены внеочередные данные. •
SIGUSR1 [16]
, SIGUSR2 [17]
— зарезервированные сигналы пользователя. Для этих сигналов предопределенной реакцией в QNX является завершение процесса (хотя естественнее ожидать, и так это предлагает POSIX, реакцию «игнорировать сигнал»), и реакцию на них должен определять пользователь. Так же как и сигнал SIGTERM
, эти сигналы никогда не посылаются системой. •
SIGVTALRM [28]
— сигнал виртуального таймера (virtual timer expired). Подобно SIGPROF
и SIGALRM
, этот сигнал возбуждается по истечении времени таймера (это третий из доступных таймеров), который измеряет время процессора только в пользовательском режиме (таймер устанавливается заданием первого параметра setitimer
, равным ITIMER_VIRTUAL
). •
SIGXCPU [30]
— сигнал о превышении лимита процессорного времени (CPU time limit exceeded). Посылается процессу при исчерпании им ранее установленного лимита процессорного времени. Действие по умолчанию — аварийное завершение. •
SIGXFSZ [31]
— сигнал о превышении предела, установленного на размер файла (file size limit exceeded). Действие по умолчанию — аварийное завершение. •
SIGWINCH [20]
— сигнал, который генерируется (в консольном режиме pterm
и xterm
эмулируют его вручную при изменении их размеров) при изменении размера окна (window size change) для запущенного в окне приложения (mc, mqc…), чтобы оно перерисовало свой экран вывода.
Поделиться:
Популярные книги
Хозяйка лавандовой долины
2. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
6.25
рейтинг книги
Элита элит
1. Элита элит
Фантастика:
боевая фантастика
8.93
рейтинг книги
Покоритель Звездных врат
1. Повелитель звездных врат
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Толян и его команда
6. Девяностые
Фантастика:
попаданцы
альтернативная история
7.17
рейтинг книги
Черный маг императора
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Пистоль и шпага
2. Штуцер и тесак
Фантастика:
альтернативная история
8.28
рейтинг книги
Лорд Системы
1. Лорд Системы
Фантастика:
фэнтези
попаданцы
рпг
4.00
рейтинг книги
Месть Паладина
5. Псевдоним `Испанец`
Фантастика:
фэнтези
попаданцы
аниме
7.00
рейтинг книги
Невеста на откуп
2. Невеста на откуп
Фантастика:
фэнтези
5.83
рейтинг книги
Любовь Носорога
Любовные романы:
современные любовные романы
9.11
рейтинг книги
На грани развода. Вернуть любовь
2. Около развода. Второй шанс на счастье
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Чужая дочь
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Прометей: каменный век
1. Прометей
Фантастика:
альтернативная история
6.82
рейтинг книги
Мимик нового Мира 10
9. Мимик!
Фантастика:
юмористическое фэнтези
альтернативная история
постапокалипсис
рпг
5.00