The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.01 - Jan. (2013 vol.62)
pp: 137-150
Rui Chu , National University of Defense Technology, ChangSha
Lin Gu , Hong Kong University of Science and Technology, Hong Kong
Yunhao Liu , Hong Kong University of Science and Technology, Hong Kong
Mo Li , Hong Kong University of Science and Technology, Hong Kong
Xicheng Lu , National University of Defense Technology, ChangSha
ABSTRACT
The networked application environment has motivated the development of multitasking operating systems for sensor networks and other low-power electronic devices, but their multitasking capability is severely limited because traditional stack management techniques perform poorly on small-memory systems without virtual memory support. In this paper, we show that combining binary translation and a new kernel runtime can lead to efficient OS designs on resource constrained platforms. We introduce SenSmart, a multitasking OS for sensor networks, and present new OS design techniques for supporting preemptive multitask scheduling, memory isolation, and adaptive stack management. Our solution provides memory isolation and automatic stack relocation on usual sensornet platforms. The adaptive stack management frees programmers from the burden of estimating tasks' stack usage, yet it enables SenSmart to schedule and run more tasks than other multitasking OSes for sensor networks. We have implemented SenSmart on MICA2/MICAz motes. Evaluation shows that SenSmart has a significantly better capability in managing concurrent tasks than other sensornet operating systems.
INDEX TERMS
Multitasking, Kernel, Base stations, Memory management, Hardware, kernel, Multitasking, memory management, stack adaptivity, binary translation
CITATION
Rui Chu, Lin Gu, Yunhao Liu, Mo Li, Xicheng Lu, "SenSmart: Adaptive Stack Management for Multitasking Sensor Networks", IEEE Transactions on Computers, vol.62, no. 1, pp. 137-150, Jan. 2013, doi:10.1109/TC.2011.238
REFERENCES
[1] S. Lin et al., “Efficient Indexing Data Structures for Flash-Based Sensor Devices,” ACM Trans. Storage, vol. 2, no. 4, pp. 468-503, 2006.
[2] P. Dutta, M. Grimmer, A. Arora, S. Bibyk, and D. Culler, “Design of a Wireless Sensor Network Platform for Detecting Rare, Random, and Ephemeral Events,” Proc. Fourth Int'l Conf. Information Processing in Sensor Networks, 2005.
[3] J. Hill, R. Szewczyk, A. Woo, S. Hollar, D. Culler, and K. Pister, “System Architecture Directions for Network Sensors,” Proc. Ninth Int'l Conf. Architectural Support for Programming Languages and Operating Systems, 2000.
[4] M. Eltoweissy, D. Gracanin, S. Olariu, and M. Younis, “Agile Sensor Network Systems,” Ad Hoc and Sensor Wireless Networks, vol. 4, no. 1, pp. 97-124, 2007.
[5] T. He et al., “VigilNet: An Integrated Sensor Network System for Energy-Efficient Surveillance,” ACM Trans. Sensor Networks, vol. 2, no. 1, pp. 1-38, 2006.
[6] R. Szewczyk, A. Mainwaring, J. Polastre, and D. Culler, “An Analysis of a Large Scale Habitat Monitoring Application,” Proc. Second Int'l Conf. Embedded Networked Sensor Systems, 2004.
[7] K. Römer and J. Ma, “PDA: Passive Distributed Assertions for Sensor Networks,” Proc. Eight Int'l Conf. Information Processing in Sensor Networks, pp. 337-348, 2009.
[8] M. Khan et al., “Diagnostic Powertracing for Sensor Node Failure Analysis,” Proc. Ninth Int'l Conf. Information Processing in Sensor Networks, pp. 117-128, 2010.
[9] A. Adya, J. Howell, M. Theimer, B. Bolosky, and J. Douceur, “Cooperative Task Management without Manual Stack Management,” Proc. USENIX Ann. Technical Conf., 2002.
[10] D. Gay, P. Levis, R. Behren, M. Welsh, E. Brewer, and D. Culler, “The nesC Language: A Holistic Approach to Networked Embedded Systems,” Proc. ACM SIGPLAN Conf. Programming Language Design and Implementation, 2003.
[11] O. Kasten and K. Römer, “Beyond Event Handlers: Programming Wireless Sensors with Attributed State Machines,” Proc. Fourth Int'l Conf. Information Processing in Sensor Networks, 2005.
[12] W. McCartney and N. Sridhar, “Abstractions for Safe Concurrent Programming in Networked Embedded Systems,” Proc. Fourth Int'l Conf. Embedded Networked Sensor Systems, pp. 167-180, 2006.
[13] A. Dunkels, O. Schmidt, T. Voigt, and M. Ali, “Protothreads: Simplifying Event-Driven Programming of Memory-Constrained Embedded Systems,” Proc. Fourth Int'l Conf. Embedded Networked Sensor Systems, pp. 29-42, 2006.
[14] C. Han, R. Kumar, R. Shea, E. Kohler, and M. Srivastava, “A Dynamic Operating System for Sensor Nodes,” Proc. Third Int'l Conf. Mobile Systems, Applications, and Services, pp. 163-176, 2005.
[15] A. Dunkels, B. Gronvall, and T. Voigt, “Contiki—A Lightweight and Flexible Operating System for Tiny Networked Sensors,” Proc. 29th Ann. IEEE Int'l Conf. Local Computer Networks, pp. 455-462, 2004.
[16] S. Bhatti et al., “MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms,” ACM/Kluwer Mobile Networks and Applications, vol. 10, no. 4, pp. 563-579, 2005.
[17] A. Eswaran, A. Rowe, and R. Rajkumar, “Nano-RK: An Energy-Aware Resource-Centric rtos for Sensor Networks,” Proc. 26th IEEE Int'l Real-Time Systems Symp., pp. 256-265, 2005.
[18] S. Yi, H. Min, S. Lee, Y. Kim, and I. Jeong, “SESAME: Space Efficient Stack Allocation Mechanism for Multithreaded Sensor Operating Systems,” Proc. 22nd Symp. Applied Computing, pp. 1201-1202, 2007.
[19] S. Yi, S. Lee, Y. Cho, and J. Hong, “SESAME-P: Memory Pool-Based Dynamic Stack Management for Sensor Operating Systems,” Proc. Third Int'l Conf. Distributed Computing in Sensor Systems, pp. 544-549, 2008.
[20] Q. Cao et al., “The LiteOS Operating System: Towards Unix-like Abstractions for Wireless Sensor Networks,” Proc. Int'l Conf. Information Processing in Sensor Networks, pp. 233-244, 2008.
[21] L. Gu and J. Stankovic, “t-kernel: Providing Reliable os Support to Wireless Sensor Networks,” Proc. Fourth Int'l Conf. Embedded Networked Sensor Systems, 2006.
[22] C. Duffy, U. Roedig, J. Herbert, and C.J. Sreenan, “Adding Preemption to TinyOS,” Proc. Fourth Workshop Embedded Networked Sensors, pp. 88-92, 2007.
[23] N. Cooprider et al., “Efficient Memory Safety for TinyOS,” Proc. Fifth Int'l Conf. Embedded Networked Sensor Systems, 2007.
[24] K. Klues et al., “TOSThreads: Thread-Safe and Non-Invasive Preemption in Tinyos,” Proc. Seventh Int'l Conf. Embedded Networked Sensor Systems, pp. 127-140, 2009.
[25] R. Kumar, E. Kohler, and M. Srivastava, “Harbor: Software-Based Memory Protection for Sensor Nodes,” Proc. Sixth Int'l Conf. Information Processing in Sensor Networks, pp. 340-349, 2007.
[26] H. Cha et al., “RETOS: Resilient, Expandable, and Threaded Operating System for Wireless Sensor Networks,” Proc. Sixth Int'l Conf. Information Processing in Sensor Networks, pp. 148-157, 2007.
[27] R. Behren, J. Condit, F. Zhou, G. Necula, and E. Brewer, “Capriccio: Scalable Threads for Internet Services,” SIGOPS Operating Systems Rev., vol. 37, no. 5, pp. 268-281, 2003.
[28] P. Levis and D. Culler, “Maté: A Virtual Machine for Tiny Networked Sensors,” Proc. 10th Int'l Conf. Architectural Support for Programming Languages and Operating Systems, 2002.
[29] R. Barr, J. Bicket, D. Dantas, B. Du, and T. Kim et al., “, On the Need for System-Level Support for Ad Hoc and Sensor Networks,” Operating Systems Rev., vol. 36, no. 2, pp. 1-5, 2002.
[30] Crossbow Technology, Inc., MICA2 Data Sheet.
[31] J.W. Hui and D. Culler, “The Dynamic Behavior of a Data Dissemination Protocol for Network Programming at Scale,” Proc. Second Int'l Conf. Embedded Networked Sensor Systems, pp. 81-94, 2004.
[32] P. Levis et al., “Trickle: A Self-Regulating Algorithm for Code Propogation and Maintenance in Wireless Sensor Network,” Proc. USENIX/ACM Symp. Networked Systems Design and Implementation, 2004.
[33] S. González-Valenzuela, M. Chen, H. Cao, and V.C.M. Leung, “Programmable Re-Tasking of Wireless Sensor Networks Using WISEMAN,” Proc. Int'l Conf. Ad Hoc Networks, 2010.
[34] SenSmart Project, http:/www.sensmart.org, 2012.
[35] Y. Wu, S. Fahmy, and N.B. Shroff, “Optimal Sleep/wake Scheduling for Time-Synchronized Sensor Networks with QoS Guarantees,” IEEE/ACM Trans. Networking, vol. 17, no. 5, pp. 1508-1521, Oct. 2009.
[36] S. Nikoletseas, “On the Energy Balance Problem in Distributed Sensor Networks,” Computer Science Rev., vol. 4, no. 2, pp. 65-79, 2010.
[37] B.L. Titzer, D.K. Lee, and J. Palsberg, “Avrora: Scalable Sensor Network Simulation with Precise Timing,” Proc. Fourth Int'l Symp. Information Processing in Sensor Networks, p. 67, 2005.
[38] P. Levis, D. Gay, and D. Culler, “Active Sensor Networks,” Proc. Second USENIX/ACM Symp. Network Systems Design and Implementation, 2005.
[39] S. Nath, P.B. Gibbons, S. Seshan, and Z. Anderson, “Synopsis Diffusion for Robust Aggregation in Sensor Networks,” ACM Trans. Sensor Networks, vol. 4, no. 2, pp. 1-40, 2008.
7 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool