Shared-stack cooperative threads

Multithreaded sensor operating systems provide the paradigm of threads which enables programmers to program and maintain their applications more easily. However, a lot of memory space can be wasted due to the fact that a fixed-size stack is allocated for each thread. In this paper, we propose the shared-stack cooperative threads which can combine the simplicity of the multithreaded programming with the performance and scalability of event-driven systems. Our experimental results show that shared-stack cooperative threads utilize memory space more efficiently with some affordable context switching overhead for threading while providing programmers with the ease of multithreaded programming.

[1]  Mani B. Srivastava,et al.  A dynamic operating system for sensor nodes , 2005, MobiSys '05.

[2]  Adam Dunkels,et al.  Using Protothreads for Sensor Node Programming , 2005 .

[3]  Adam Richard Torgerson Automated thread stack management for resource-constrained sensor operating systems , 2005 .

[4]  Andreas Gustafsson,et al.  Threads without the Pain , 2005, ACM Queue.

[5]  Noemi de La Rocque Rodriguez,et al.  A cooperative multitasking model for networked sensors , 2006, 26th IEEE International Conference on Distributed Computing Systems Workshops (ICDCSW'06).

[6]  Jin Won Kim,et al.  Performance Analysis of Task Schedulers in Operating Systems for Wireless Sensor Networks , 2006, ICCSA.

[7]  Adam Dunkels,et al.  Contiki - a lightweight and flexible operating system for tiny networked sensors , 2004, 29th Annual IEEE International Conference on Local Computer Networks.

[8]  Archana Bharathidasan,et al.  Sensor Networks : An Overview , 2002 .

[9]  Jeff Rose,et al.  MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms , 2005, Mob. Networks Appl..

[10]  Deborah Estrin,et al.  Guest Editors' Introduction: Overview of Sensor Networks , 2004, Computer.

[11]  Marvin Theimer,et al.  Cooperative Task Management Without Manual Stack Management , 2002, USENIX Annual Technical Conference, General Track.

[12]  Eric A. Brewer,et al.  USENIX Association Proceedings of HotOS IX : The 9 th Workshop on Hot Topics in Operating Systems , 2003 .