MTSS: Multi Task Stack Sharing For Embedded Systems
Barua, Rajeev Kumar
MetadataShow full item record
Out-of-memory errors are a serious source of unreliability in most embedded systems. Applications run out of main memory because of the frequent difficulty of estimating the memory requirement before deployment, either because it depends on input data, or because certain language features prevent estimation. This work improves reliability for multi-tasking embedded systems by proposing MTSS, a multi-task stack sharing technique, that grows the stack of a particular task into other tasks in the system if the task attempts to overflow its bounds. This technique can avoid the out-of-memory error if the extra space recovered is enough to complete execution. In addition, unlike conventional systems, MTSS detects memory overflows, allowing the possibility of remedial action or a graceful exit if the recovered space is not enough to complete execution.