Component: Exception handling

Macro name

CYGPKG_KERNEL_EXCEPTIONS

Type

Boolean

Description

In the context of the eCos kernel exceptions are unexpected events detected by the hardware, for example an attempt to execute an illegal instruction. There is no relation with other forms of exception, for example the catch and throw facilities of languages like C++. It is possible to disable all support for exceptions and thus save some memory.

Option: Decode exception types in kernel

Macro name

CYGSEM_KERNEL_EXCEPTIONS_DECODE

Type

Boolean

Description

On targets where several different types of exception are possible, for example executing an illegal instruction and division by zero, it is possible for the kernel to do some decoding of the exception type and deliver the different types of exception to different handlers in the application code. Alternatively the kernel can simply pass all exceptions directly to application code, leaving the decoding to be done by the application

Option: Use global exception handlers

Macro name

CYGSEM_KERNEL_EXCEPTIONS_GLOBAL

Type

Boolean

Description

In the context of the eCos kernel exceptions are unexpected events detected by the hardware, for example an attempt to execute an illegal instruction. If the kernel is configured to support exceptions then two implementations are possible. The default implementation involves a single set of exception handlers that are in use for the entire system. The alternative implementation allows different exception handlers to be specified for each thread.