Protothreads

作者: Adam Dunkels , Oliver Schmidt , Thiemo Voigt , Muneeb Ali

DOI: 10.1145/1182807.1182811

关键词:

摘要: Event-driven programming is a popular model for writing programs tiny embedded systems and sensor network nodes. While event-driven can keep the memory overhead down, it enforces state machine style which makes many difficult to write, maintain, debug. We present novel abstraction called protothreads that possible write in thread-like style, with of only two bytes per protothread. show significantly reduce complexity number widely used previously written machines. For examined majority machines could be entirely removed. In other cases states transitions was drastically decreased. With lines code reduced by one third. The execution time on order few processor cycles.

参考文章(31)
Eddie Kohler, Ryan Cunningham, Making events less slippery with eel hot topics in operating systems. pp. 3- 3 ,(2005)
John R. Douceur, William J. Bolosky, Marvin Theimer, Atul Adya, Jon Howell, Cooperative Task Management Without Manual Stack Management usenix annual technical conference. pp. 289- 302 ,(2002)
Adam Dunkels, Oliver Schmidt, Thiemo Voigt, Using Protothreads for Sensor Node Programming workshop on real world wireless sensor networks. ,(2005)
Philip Alexander Levis, Samuel Madden, David Gay, Joseph Polastre, Robert Szewczyk, Alec Woo, Eric A Brewer, David E Culler, The emergence of networking abstractions and techniques in TinyOS networked systems design and implementation. pp. 1- 1 ,(2004)
Matt Welsh, Geoff Mainland, Programming sensor networks using abstract regions networked systems design and implementation. pp. 3- 3 ,(2004)
Ramakrishna Gummadi, Omprakash Gnawali, Ramesh Govindan, Macro-programming wireless sensor networks using Kairos distributed computing in sensor systems. pp. 126- 140 ,(2005) , 10.1007/11502593_12
J. Paisley, J. Sventek, Real-time Detection of Grid Bulk Transfer Traffic network operations and management symposium. pp. 66- 72 ,(2006) , 10.1109/NOMS.2006.1687539
David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer, David Culler, The nesC language: a holistic approach to networked embedded systems programming language design and implementation. ,vol. 49, pp. 1- 11 ,(2003) , 10.1145/2641638.2641652
Robert E. Odeh, Donald E. Knuth, The art of computer programming, volume 1 (3rd ed.): fundamental algorithms Journal of the American Statistical Association. ,vol. 64, pp. 401- ,(1997) , 10.2307/2283757
Chih-Chieh Han, Ram Kumar, Roy Shea, Eddie Kohler, Mani Srivastava, A dynamic operating system for sensor nodes Proceedings of the 3rd international conference on Mobile systems, applications, and services - MobiSys '05. pp. 163- 176 ,(2005) , 10.1145/1067170.1067188