Интернет магазин китайских планшетных компьютеров



Компьютеры - SIGPOLL

05 июня 2011





В POSIX-системах, сигнал, посылаемый процессу для информирования об изменении состояния выполняющегося на фоне асинхронного ввода-вывода.

SIGPOLL — целочисленная константа, определенная в заголовочном файле signal.h. Символьные имена сигналов используются вместо номеров, так как в разных реализациях номера сигналов могут различаться.

Сигнал SIGIO в Linux, является синонимом SIGPOLL.

Этимология

SIG — общий префикс сигналов, POLL — сокращенное написание англ. polling — опрос, в контексте системного вызова poll, IO — сокращение англ. I/O — ввод-вывод.

Использование

Согласно POSIX, SIGPOLL — сигнал по умолчанию, посылаемый при изменении состояния открытого файла, для которого, системным вызовом ioctl, был установлен флаг I_SETSIG. Используя этот механизм, программа может осуществлять асинхронный ввод-вывод без необходимости дополнительного мультиплексирования, которое необходимо при использовании функции select. Возможным минусом данного метода является потеря непрерывности в коде программы и превращения его в нечитабельное «спагетти», с потенциальной возможностью возникновения ошибок типа race condition.

POSIX 1003.1 рекомендует использование стандартизированных системных вызовов для асинхронного ввода-вывода, определяемых заголовочным файлом aio.h. Всем запросы на ввод-вывод с использованием этих функций ставятся в очередь для асинхронного выполнения, их результаты и состояние могут быть получены через функции aio_return и aio_error.

Сигналы POSIX
SIGABRT | SIGALRM | SIGFPE | SIGHUP | SIGILL | SIGINT | SIGKILL | SIGPIPE | SIGQUIT | SIGSEGV | SIGTERM | SIGUSR1 | SIGUSR2 | SIGCHLD | SIGCONT | SIGSTOP | SIGTSTP | SIGTTIN | SIGTTOU | SIGBUS | SIGPOLL | SIGPROF | SIGSYS | SIGTRAP | SIGURG | SIGVTALRM | SIGXCPU | SIGXFSZ |

Сигналы реального времени — SIGRTMIN — SIGRTMAX.

Некоторые сигналы не включенные в POSIX и синонимы
SIGIOT | SIGEMT | SIGSTKFLT | SIGIO | SIGCLD | SIGPWR | SIGLOST | SIGWINCH | SIGUNUSED


Просмотров: 958


<<< SIGPIPE
SIGPROF >>>