SIGSYS
В POSIX-системах, SIGSYS — сигнал, предназначенный для посылки программе, при попытке передать неправильный аргумент в системный вызов.
SIGSYS | |
---|---|
Описание | Неправильный аргумент системного вызова |
По умолчанию | завершение процесса |
Коды SA_SIGINFO | |
Не имеет специфических кодов |
SIGSYS — целочисленная константа, определенная в заголовочном файле signal.h
. Символьные имена сигналов используются вместо номеров, так как в разных реализациях номера сигналов могут различаться.
Этимология
SIG — общий префикс сигналов (от англ. signal), SYS — сокращенное написание англ. system call — системный вызов.
Использование
Теоретически, SIGSYS может быть послан, когда процесс передает неправильный аргумент в системный вызов. На практике же, система возвращает ENOSYS, если системного вызова с запрошенным кодом не существует или соответствующую ошибку, если аргумент системного вызова неправилен (например, EBADF, если заданного файлового дескриптора не существует). POSIX.1 говорит о SIGSYS следующим образом:
- There is very little that a conforming POSIX.1 application can do by catching, ignoring or masking ... SIGSYS. ...
- One portable use that does exist ... is that a command interpreter can recognize them as the cause of a process's termination.
- Приложение, отвечающее POSIX.1 при перехвате SIGSYS, мало что может сделать с ним.
- Например, командный интерпретатор может указать его как причину завершения процесса.