An Efficient Stack Management for Sensor Operating Systems
Operating systems for sensor networks must provide energy and memory-space efficient execution environments for applications because of the resource constraints of the sensor nodes. The shared-stack cooperative threads have been proposed to conserve stack memory-space and to minimize the possibility of stack overflow in the sensor operating systems. However, stack switching brings about external fragmentations in the stack space. Compaction may remove the fragmentation but the compaction overhead could degrade the performance. In this paper, we propose an efficient scheme to determine the compaction time of a shared-stack to reduce the number of compactions. For determining the time of a compaction, we evaluated the expected stack overflow time according to our stack model, which is based on the continuous time Markov chain. Our simulation results show that the number of compactions is greatly reduced and the lifetime of the sensor networks is increased with using our proposed scheme.
operating systems sensor networks cooperative threads stack overflow continuous time markov chain memory external fragmentation