Abstract
Wireless sensor networks are an increasingly popular application area for embedded systems. Individual sensor nodes within a network are typically resource-constrained, event-driven, and require a high degree of concurrency. This combination of requirements motivated the development of the widely used TinyOS sensor node operating system. The TinyOS concurrency model is a lightweight nonpreemptive system designed to suit the needs of typical sensor network applications. Although the TinyOS concurrency model is easier to reason about than preemptive threads, it can still give rise to undesirable behavior due to unexpected interleavings of related tasks, or unanticipated preemption by interrupt handlers. To aid TinyOS developers in understanding the behavior of their programs we have developed a technique for using the process algebra Communicating Sequential Processes (CSP) to model the interactions between TinyOS components, and between an application and the TinyOS scheduling and preemption mechanisms. Analysis of the resulting models can help TinyOS developers to discover and diagnose concurrency-related errors in their designs that might otherwise go undetected until after the application has been widely deployed. Such analysis is particularly valuable for the TinyOS components that are used as building blocks for a large number of other applications, since a subtle or sporadic error in a widely deployed building block component could be extremely costly to repair.
- Archer, W., Levis, P., and Regehr, J. 2007. Interface contracts for TinyOS. In Proceedings of the 6th International Conference on Information Processing in Sensor Networks (IPSN’07). ACM, 158--165. Google Scholar
Digital Library
- Bucur, D. and Kwiatkowska, M. 2009. Towards software verification for TinyOS applications. In Proceedings of the Workshop on Formal Approaches to Ubiquitous Systems (FAUSt’09).Google Scholar
- Clarke, E. M. and Wing, J. M. 1996. Formal methods: State of the art and future directions. ACM Comput. Surv. 28, 4, 626--643. Google Scholar
Digital Library
- Culler, D. E. 2006. TinyOS: Operating system design for wireless sensor networks. Sensors 23, 5.Google Scholar
- Gardiner, P. et al. 2005. Failures-Divergences Refinement: FDR2 User Manual. Formal Systems (Europe) Ltd.Google Scholar
- Gay, D., Levis, P., von Behren, R., Welsh, M., Brewer, E., and Culler, D. 2003. The nesC language: A holistic approach to networked embedded systems. ACM SIGPLAN Not. 38, 5, 1--11. Google Scholar
Digital Library
- Gay, D., Levis, P., Culler, D., and Brewer, E. 2005. nesC 1.2 language reference manual. http://nescc.cvs.sourceforge.net/viewvc/*checkout*/nescc/nesc/doc/ref.pdf?revision=1.18.Google Scholar
- Kleine, M. and Helke, S. 2009. Low-level code verification based on CSP models. In Proceedings of the Brazilian Symposium on Formal Methods (SBMF’09). Springer, 266--281. Google Scholar
Digital Library
- Kothari, N., Millstein, T., and Govindan, R. 2008. Deriving state machines from TinyOS programs using symbolic execution. In Proceedings of the 7th International Conference on Information Processing in Sensor Networks (IPSN’08). IEEE Computer Society, 271--282. Google Scholar
Digital Library
- Levis, P. 2006. TinyOS programming. http://csl.stanford.edu/ pal/pubs/tinyos-programming.pdf.Google Scholar
- Levis, P. 2007. TinyOS 2.x boot sequence. TinyOS Extension Proposal TEP-107, TinyOS Core Working Group.Google Scholar
- Levis, P., Lee, N., Welsh, M., and Culler, D. 2003. TOSSIM: Accurate and scalable simulation of entire TinyOS applications. In Proceedings of the 1st International Conference on Embedded Networked Sensor Systems (SenSys’03). ACM, 126--137. Google Scholar
Digital Library
- Levis, P., Madden, N., et al. 2005. TinyOS: An operating system for sensor networks. In Ambient Intelligence, W. Weber, J. Rabaey, and E. Aarts, Eds. Springer, 115--148.Google Scholar
- McInnes, A. I. 2009. Using CSP to model and analyze TinyOS applications. In Proceedings of the 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS’09). IEEE Computer Society, 79--88. Google Scholar
Digital Library
- Rosa, N. S. and Cunha, P. R. F. 2007. Using LOTOS for formalising wireless sensor network applications. Sensors 7, 8, 1447--1461.Google Scholar
Cross Ref
- Roscoe, A. W. 1998. The Theory and Practice of Concurrency. Prentice Hall, Englewood Cliffs, NJ. Google Scholar
Digital Library
- Sharp, C. 2008. AlarmToTimerC.nc. TinyOS 2.x Source. http://code.google.com/p/tinyos-main/source/browse/trunk/tos/lib/timer/AlarmToTimerC.nc?r=5108.Google Scholar
- Völgyesi, P., Maróti, M., Dóra, S., Osses, E., and Lédeczi, Á. 2005. Software composition and verification for sensor networks. Sci. Comput. Prog. 56, 1--2, 191--210. Google Scholar
Digital Library
- Woehrle, M., Plessl, C., Beutel, J., and Thiele, L. 2007.Increasing the reliability of wireless sensor networks with a distributed testing framework. In Proceedings of the 4th Workshop on Embedded Networked Sensors (EmNets’07). ACM, 93--97. Google Scholar
Digital Library
- Xie, F., Yang, G., and Song, X. 2006. Compositional reasoning for hardware/software co-verification. In Proceedings of the 4th International Symposium on Automated Technology for Verification and Analysis. Springer, 154--169. Google Scholar
Digital Library
Index Terms
Modeling and Analysis of TinyOS Sensor Node Firmware: A CSP Approach
Recommendations
WsVsSenNet: An Era of Enhanced Vision Based Sensing Capability
ICCTD '09: Proceedings of the 2009 International Conference on Computer Technology and Development - Volume 01Flexible and multi-adaptive platforms are always being appreciated by the people. In the field of Information Technology the wireless vision sensor network is one of the fastest growing segments. Due to their flexibility of networks and easily ...
Design of Wireless Sensor Networks Node in Coalmine
ICICTA '09: Proceedings of the 2009 Second International Conference on Intelligent Computation Technology and Automation - Volume 04Combined with the temperature and gas monitoring demand, a new technology which is called wireless sensor network is used to solve the problems exiting in most cable transmission systems. Base on designing of wireless sensor networks low-power hardware ...
Using CSP to Model and Analyze TinyOS Applications
ECBS '09: Proceedings of the 2009 16th Annual IEEE International Conference and Workshop on the Engineering of Computer Based SystemsThe TinyOS concurrency model, although easier to reason about than shared-state threads, may still produce undesirable behavior as a result of unexpected interleaving of concurrent activities. This is problematic, since TinyOS applications are typically ...








Comments