Signal APIs
An X/Open specification defines a "signal" as a mechanism by which a process may be notified of, or affected by, an event occurring in the system. The term signal is also used to refer to the event itself.
For additional information on the Signal APIs, see:
The Signal APIs are:
- alarm() (Set schedule for alarm signal) generates a SIGALRM signal after the number of seconds specified by the seconds parameter have elapsed. The delivery of the SIGALRM signal is directed at the calling process.
- getitimer() (Get value of interval timer) returns the value last used to set the interval timer specified by which in the structure pointed to by value.
- kill() (Send signal to process or group of processes) sends a signal to a process or process group specified by pid.
- pause() (Suspend process until signal received) suspends processing of the calling thread.
- Qp0sDisableSignals() (Disable process for signals) prevents the process from receiving signals.
- Qp0sEnableSignals() (Enable process for signals) enables the process to receive signals.
- setitimer() (Set value of interval timer) sets the timer specified by which to the value in the structure pointed to by value and stores the previous value of the timer in the structure pointed to by ovalue.
- sigaction() (Examine and change signal action) examines, changes, or both examines and changes the action associated with a specific signal.
- sigaddset() (Add signal to signal set) is part of a family of functions that manipulate signal sets.
- sigdelset() (Delete signal from signal set) is part of a family of functions that manipulate signal sets.
- sigemptyset() (Initialize and empty signal set) is part of a family of functions that manipulate signal sets.
- sigfillset() (Initialize and fill signal set) is part of a family of functions that manipulate signal sets.
- sigismember() (Test for signal in signal set) is part of a family of functions that manipulate signal sets.
- siglongjmp() (Perform nonlocal goto with signal handling) restores the stack environment previously saved in env by sigsetjmp().
- sigpending() (Examine pending signals) returns signals that are blocked from delivery and pending for either the calling thread or the process.
- sigprocmask() (Examine and change blocked signals) examines, or changes, or both examines and changes the signal mask of the calling thread.
- sigsetjmp() (Set jump point for nonlocal goto) saves the current stack environment and, optionally, the current signal mask.
- sigsuspend() (Wait for signal) replaces the current signal mask of a thread with the signal set given by *sigmask and then suspends processing of the calling process.
- sigtimedwait() (Synchronously accept a signal for interval of time) selects a pending signal from set, clears it from the set of pending signals for the thread or process, and returns that signal number in the si_signo member in the structure that is referenced by info.
- sigwait() (Synchronously accept a signal) selects a pending signal from set, clears it from the set of pending signals for the thread or process, and returns that signal number in the location that is referenced by sig.
- sigwaitinfo() (Synchronously accept a signal and signal data) selects a pending signal from set, clears it from the set of pending signals for the thread or process, and returns that signal number in the si_signo member in the structure that is referenced by info.
- sleep() (Suspend processing for interval of time) suspends a thread for a specified number of seconds.
- usleep() (Suspend processing for interval of time) suspends a thread for the number of microseconds specified by the of useconds parameter.
Note: These functions use header (include) files from the library QSYSINC, which is optionally installable. Make sure QSYSINC is installed on your system before using any of the functions. See Header Files for UNIX-Type Functions for the file and member name of each header file.
The term "signal" comes from X/Open CAE
Specification System Interface Definitions Issue 4, Number 2, Glossary, page
27. X/Open Company Ltd., United Kingdom, 1994.