A Systems Architecture for Sensor Networks Based On Hardware/Software Co-design

  • Andy Nisbet
  • Simon Dobson
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3457)


We describe the motivation and design of a novel embedded systems architecture for large networks of small devices, tha canonical example being wireless sensor networks. The architecture differs from previous work in being based explicitly on a hardware/software co-design approach centred around the deployment of novel programming language constructs directly onto hardware in order to improve optimisation and expressibility. The programming interface enables the dynamic download and execution of domain-specific code to facilitate the development of context aware pervasive computing systems whose behaviour must adapt to their changing environment. To this end, the architecture implements a virtual machine operating environment based on Scheme and μClinux that encapsulates a CPU core, digital logic, generic I/O, network interfaces and domain-specific programming language composition.


Sensor Node Wireless Sensor Network Virtual Machine Medium Access Control Pervasive Computing 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Fjeld, F.V.: Movitz:Using Common Lisp for kernel-level programming on commodity hardware. In: Workshop on Evolution and Reuse of Language Specifications for Domain Specific Languages at ECOOP 2004 (2004)Google Scholar
  2. 2.
    Levis, P., Culler, D.: Maté: A tiny virtual machine for sensor networks. In: Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2002), San Jose, California, October 2002, pp. 85–95 (2002)Google Scholar
  3. 3.
    Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D., Pister, K.: System architecture directions for network sensors. In: Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2000), Cambridge, USA (November 2000)Google Scholar
  4. 4.
    Dobson, S., Nixon, P.: More principled design of pervasive computing systems. In: Proceedings of Engineering for Human-Computer Interaction and Design, Specification and Verification of Interactive Systems (EHCI-DVIS 2004). LNCS (To appear ) Google Scholar
  5. 5.
    Dobson, S.: Creating programming languages for (and from) the internet. In: Workshop on Evolution and Reuse of Language Specifications for Domain Specific Languages at ECOOP 2004 (2004)Google Scholar
  6. 6.
    uClinux Embedded Linux Microcontroller Project Home Page,
  7. 7.
    Lord, T.: Guile Scheme, Technical Report, online ‘info’ documentation, Free Software Foundation (1996)Google Scholar
  8. 8.
    Kiczales, G., Lamping, J., Menhdhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  9. 9.
    Lafferty, D., Cahill, V.: Language-independent aspect-oriented programming. In: Proceedings of the ACM Object-Oriented Programming Systems, Languages and Applications Conference (OOPSLA 2003). ACM Press, New York (2003)Google Scholar
  10. 10.
    Dobson, S., Nixon, P., Wade, V., Terzis, S., Fuller, J.: Vanilla: an open language framework. In: Czarnecki, K., Eisenecker, U.W. (eds.) GCSE 1999. LNCS, vol. 1799, p. 91. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Hill, J., Horton, M., Kling, R.: Krishnamurthy: The Platforms Enabling Wireless Sensor Networks. Communications of the ACM 47(6), 41–46 (2004)CrossRefGoogle Scholar
  12. 12.
    Levis, P., Madden, S., Gay, D., Polastre, J., Szewczyk, W.L., Brewer, E., Culler, D.: The Emergence of Networking Abstractions and Techniques in TinyOS. In: Proceedings of the First USENIX/ACM Symposium on Networked System Design and Implementation, NSDI (2004)Google Scholar
  13. 13.
    Girod, L., Elson, J., Cerpa, A., Stathopoulus. T., Ramanathan, N., Estrin, D.: Em*: A Software Environment for Developing and Deploying Wireless Sensor Networks, Technical Report 034, Centre for Embedded Network Sensing, UCLA Computer Science Department, Los Angeles, USA (2003)Google Scholar
  14. 14.
    Madden, S., Szewczyk, R., Franklin, M., Culler, D.: Supporting Aggregate Queries over Ad-Hoc Wireless Sensor Newtworks. In: Proceedings of the Workshop on Mobile Computing and Systems Applications, New York, USA (June 2002)Google Scholar
  15. 15.
    Scsh - The Scheme Shell Home Page,

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Andy Nisbet
    • 1
  • Simon Dobson
    • 2
  1. 1.Manchester Metropolitan UniversityManchesterUK
  2. 2.Department of Computer ScienceUniversity CollegeDublinIE

Personalised recommendations