Stack Checking

One common source of program errors is memory corruption, such as stack overwrite. As most Cortex-M MCUs do not have a memory protection mechanism, it is possible that errant user code could corrupt kernel data structure and render the entire system inoperable.

To help with detecting some of these abnormal conditions, REXIS include stack-checking code whenever a task is paused or resumed. There are many ways memory corruption could happen, but at least this checking will catch some of the cases.