Читаем Linux программирование в примерах полностью

signal() изменяет действие для signum и возвращает предыдущее действие. (Это дает вам возможность восстановить при желании предыдущее действие.) Возвращаемое значение может равняться также SIG_ERR, что указывает на произошедшую ошибку. (Некоторые сигналы невозможно перехватить или игнорировать; предоставление для них обработчика сигнала или неверный signum создают эту ошибку.) В табл. 10.1 перечислены сигналы, доступные под GNU/Linux, их числовые значения, действия по умолчанию для каждого, формальный стандарт или современная операционная система, которые их определяют, и смысл каждого.

Таблица 10.1. Сигналы GNU/Linux

ИмяЗначениеПо умолчаниюИсточникСмысл
SIGHUP1TermPOSIXОтсоединение
SIGINT2TermISO CПрерывание
SIGQUIT3CorePOSIXВыход
SIGILL4CoreISO CНедействительная инструкция
SIGTRAP5CorePOSIXТрассировочная ловушка
SIGABRT6CoreISO CПрекращение
SIGIOT6CoreBSDЛовушка IOT
SIGBUS7CoreBSDОшибка шины
SIGFPE8CoreISO CИсключение с плавающей точкой
SIGKILL9TermPOSIXЗавершение, неблокируемый
SIGUSR110TermPOSIXСигнал 1 пользователя
SIGSEGV11CoreISO CНарушение сегмента
SIGUSR212TermPOSIXСигнал 2 пользователя
SIGPIPE13TermPOSIXНарушенный канал
SIGALRM14TermPOSIXАварийные часы
SIGTERM15TermISO CЗавершение
SIGSTKFLT16TermLinuxОшибка стека в процессоре (не используется)
SIGCHLD17IgnrPOSIXИзменение статуса порожденного процесса
SIGCLD17IgnrSystem VТо же, что и SIGCHLD (для совместимости)
SIGCONT18POSIXПродолжить при остановке
SIGSTOP19StopPOSIXСтоп, неблокируемый
SIGTSTP20StopPOSIXСтоп от клавиатуры
SIGTTIN21SlopPOSIXФоновое чтение от tty
SIGTTOU22StopPOSIXФоновая запись в tty
SIGURG23IgnrBSDСрочный сигнал сокета
SIGXCPU24CoreBSDПревышение предела процессора
SIGXFSZ25CoreBSDПревышение предела размера файла
SIGVTALRM26TermBSDВиртуальные аварийные часы
SIGPROF27TermBSDПрофилирующие аварийные часы
SIGWINCH28IgnrBSDИзменение размера окна
SIGIO29TermBSDВозможен ввод/вывод
SIGPOLL29TermSystem VОпрашиваемое событие, то же, что и SIGIO (для совместимости)
SIGPWR30TermSystem VПовторный запуск из-за сбоя питания
SIGSYS31CorePOSIXНеверный системный вызов

Обозначения: Core: Завершить процесс и создать снимок образа процесса Ignr: Игнорировать сигнал Stop: Остановить процесс. Term: Завершить процесс.

Более старые версии оболочки Борна (/bin/sh) непосредственно связывали с номерами сигналов ловушки (traps), которые являются обработчиками сигналов на уровне оболочки. Таким образом, всесторонне образованному Unix-программисту нужно было знать не только имена сигналов для использования в коде С, но также и соответствующие номера сигналов! POSIX требует, чтобы команда trap понимала символические имена сигналов (без префикса 'SIG'), поэтому этого больше не требуется. Однако (главным образом для лучшего разбирательства), мы предоставили эти номера в интересах полноты из-за того, что однажды вам может понадобиться иметь дело со сценарием оболочки, созданным до POSIX, или с древним кодом на С, которые непосредственно используют номера сигналов.

ЗАМЕЧАНИЕ. Для некоторых более новых сигналов, от 16 и выше, соответствующие номера сигнала и их имена на различных платформах не обязательно совпадают! Проверьте заголовочные файлы и справочные страницы на своей системе. Табл. 10.1 верна для GNU/Linux

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных