Servicing Interrupts – a Robust Two-Level Interrupt Model
Most embedded applications need to service peripheral devices from time to time. Polling the devices is one way but a costly one in terms of cycles, power and performance. Interrupts are usually a better solution.
Novos Environments use a two-level interrupt service model, providing a robust design, efficiently servicing the source of the interrupt in a timely manner with as little overhead as possible.
Because all Novos Environments utilize the same model for handling interrupts, interrupt servicing is flexible, rapid and easily developed. Interrupt Service Routines execute as high priority Foreground entities and are allowed to use regular Novos services provided the service does not block. As a result, they are likely to be reused, preserving the investment in them.