When TI discusses the MSP430 specific support, it should not be a surprise that one needs to include the topic of interrupt handling, since by definition, this is the code that runs closest to the metal of the device. SYS/BIOS provides very specific support for interrupt handling and this is for reasons of both necessity, to allow interrupts to run as another type of thread in the system and also to provide developers with services that will let them write applications faster and better. Typically, when a system is processing an interrupt, other interrupt handling is postponed or disrupted. So the usual design philosophy is to get in and out of the interrupt service routine (ISR) as quickly as possible. Using a Real-Time Operating System (RTOS) like SYS/BIOS is usually a help here, because it will allow an easy partitioning of code to lower priority threads, such as tasks and software interrupts. Going hand-in-hand with efficiency is flexibility – especially when working with a full featured RTOS like SYS/BIOS. It is important to tailor the interrupt handling to support the services that are really needed and allow the rest to be optimized out. SYS/BIOS’s configuration technology makes this a pretty straightforward process. Power management is critical on the MSP430 and interrupts are typically when a system will come out of low power mode. A part of using SYS/BIOS is making sure that ISRs run correctly as high priority threads in a system in which tasks and software interrupts (SWIs) are also running. SYS/BIOS provides a system interrupt stack, and switches to this stack immediately upon servicing a first interrupt, and then switches back after the interrupt (and any nested-on-top interrupts) completes. It can significantly reduce the amount of memory required for individual task stacks, because SWIs all do not need to be sized large enough to accommodate the maximum possible interrupt stack depth. Finally, TI will note that SYS/BIOS provides users with a number of tools and APIs to help with real time debugging, since ISRs are definitely a place where one might want to get visibility on what is going on in the system.