I seek to better understand stack usage in the emBOS ARM world. My current application is on an NXP ARM7, the LPC2138. I am working with IAR 4.41 tools.
The ARM-specific documentation that came with emBOS says that emBOS internals run in SUPERVISOR mode, and tasks run in SYSTEM mode. This doc also seems to equate SYSTEM and SUPERVISOR stacks in section 6.2, which would be incorrect if that is the implication. The stack initialization included with embOS for this processor (and a few others that I glanced at) only sets up a SYSTEM and an IRQ stack. The code switches to SYSTEM mode before completing initialization and calling main. Is is the SUPERVISOR stack allocated and sized by internal OS routines ?
The ARM-specific documentation that came with emBOS says that emBOS internals run in SUPERVISOR mode, and tasks run in SYSTEM mode. This doc also seems to equate SYSTEM and SUPERVISOR stacks in section 6.2, which would be incorrect if that is the implication. The stack initialization included with embOS for this processor (and a few others that I glanced at) only sets up a SYSTEM and an IRQ stack. The code switches to SYSTEM mode before completing initialization and calling main. Is is the SUPERVISOR stack allocated and sized by internal OS routines ?