ChorusOS 4.0.1 Simulator for the Solaris Operating Environment (SPARC Platform Edition) User's Guide

UNIX Signals

One of the ways supervisor actors communicate with the Solaris Operating Environment, through ChorusOS APIs, is by using signals.

The ChorusOS 4.0.1 Simulator for the Solaris Operating Environment (SPARC Platform Edition) converts UNIX signals into interrupts and exceptions. As a result, processes outside the ChorusOS operating system can signal to the ChorusOS process in order to generate asynchronous events. These events are then caught by supervisor processes through the standard ChorusOS interrupt management interface. Supervisor processes can also use the exception management interface to handle exception-type signals, just as they would for native exceptions on native hardware.

Table 3-1 illustrates how UNIX signals are classified.

Table 3-1 UNIX Signal Classification
 Signal Number Category Interrupt Number Exception Number
SIGHUP UNIX -- --
SIGINT INTERRUPT K_INTR_0 --
SIGQUIT INTERRUPT K_INTR_1 --
SIGILL EXCEPTION -- K_EXCP_ILL
SIGTRAP EXCEPTION -- K_EXCP_TRAP
SIGABRT INTERRUPT K_INTR_2 --
SIGEMT EXCEPTION -- K_EXCP_EMT
SIGFPE EXCEPTION -- K_EXCP_FPE
SIGKILL UNIX -- --
SIGBUS EXCEPTION -- K_EXCP_BUS
SIGSEGV EXCEPTION -- K_EXCP_SEGV
SIGSYS EXCEPTION -- K_EXCP_SYS
SIGPIPE INTERRUPT K_INTR_3 --
SIGALRM INTERRUPT K_INTR_TIMER --
SIGTERM INTERRUPT K_INTR_5 --
SIGUSR1 INTERRUPT K_INTR_6 --
SIGUSR2 INTERRUPT K_INTR_7 --
SIGCLD IGNORED -- --
SIGPWR INTERRUPT K_INTR_8 --
SIGWINCH INTERRUPT K_INTR_9 --
SIGURG INTERRUPT K_INTR_10 --
SIGIO INTERRUPT K_INTR_IORDY --
SIGSTOP UNIX -- --
SIGTSTP UNIX -- --
SIGCONT IGNORED -- --
SIGTTIN UNIX -- --
SIGTTOU UNIX -- --
SIGVTALRM INTERRUPT K_INTR_12 --
SIGPROF INTERRUPT K_INTR_13 --
SIGXCPU EXCEPTION -- K_EXCP_XCPU
SIGXFSZ EXCEPTION -- K_EXCP_XFSZ

Signals which are not described in this table (those up to SIGRTMAX) are ignored.