Open System Services Programmer's Guide
Table 67 Numerical Limits in the POSIX User Thread Model Library (continued)
ValueDescriptionSymbolic Constant
4096Minimum number of bytes available for the thread
stack.
PTHREAD_STACK_MIN
2048Maximum number of threads supported per
process
PTHREAD_THREADS_MAX
Signals and Signal Handling
Types of Signals
There are two basic types of signals:
• Synchronous signals represent events that occur inside a process.
Synchronous signals occur immediately after the instruction that caused the event—for example,
attempting to divide by zero. A synchronous signal is associated with the thread that is
executing when the event occurs. A thread can install signal handlers (using the sigaction()
function) for the synchronous signals that occur during its execution. For terminating signals,
the default behavior is to terminate the process.
• Asynchronous signals represent events external to a process.
A thread can wait for a set of asynchronous signals using the PUT Model library version of
the sigwait() function. If a thread is waiting for a type of signal that is received, the thread
is awakened and if a signal handler has been installed, it is invoked, and the signal is
considered handled; otherwise, the default signal action is taken. For a terminating signal,
the default behavior is to terminate the process. You can define signal-catching functions for
asynchronous signals. See “Thread-Aware Signal Handling” (page 388).
The supported signal numbers are listed in Table 68. For more information about the PUT Model
library implementation of signals, see “Using Signals” (page 386).
Table 68 Signals Processed by Threads
DescriptionDefault ActionTypeNumberName
Abnormal terminationTerminate with saveabendProcess-level31
1
SIGABEND
Abort processTerminate with saveabendSynchronous6SIGABRT
Alarm clockTerminate processAlarm signal14SIGALRM
Child has stopped or
terminated
Discard signalProcess-level18SIGCHLD
Continue executionContinue executionProcess-level28SIGCONT
Arithmetic overflowTerminate with saveabendSynchronous8SIGFPE
HangupTerminate processProcess-level1SIGHUP
Invalid instructionTerminate with saveabendSynchronous4SIGILL
InterruptTerminate processAsynchronous2SIGINT
IO possible or completedDiscard signalSynchronous7SIGIO
KillTerminate processProcess-level9
1
SIGKILL
NonStop operating system
limits trap
Terminate with saveabendSynchronous27SIGLIMIT
Uncorrectable memory errorTerminate with saveabendSynchronous22SIGMEMERR
Memory manager read errorTerminate with saveabendSynchronous24SIGMEMMGR
Signals and Signal Handling 385