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.