System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Maté: a tiny virtual machine for sensor networks
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
The nesC language: A holistic approach to networked embedded systems
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
The design of an acquisitional query processor for sensor networks
Proceedings of the 2003 ACM SIGMOD international conference on Management of data
Efficient code distribution in wireless sensor networks
WSNA '03 Proceedings of the 2nd ACM international conference on Wireless sensor networks and applications
The dynamic behavior of a data dissemination protocol for network programming at scale
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Contiki - A Lightweight and Flexible Operating System for Tiny Networked Sensors
LCN '04 Proceedings of the 29th Annual IEEE International Conference on Local Computer Networks
A dynamic operating system for sensor nodes
Proceedings of the 3rd international conference on Mobile systems, applications, and services
Proceedings of the 3rd international conference on Embedded networked sensor systems
VMSTAR: synthesizing scalable runtime environments for sensor networks
Proceedings of the 3rd international conference on Embedded networked sensor systems
Avrora: scalable sensor network simulation with precise timing
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
NSDI'04 Proceedings of the 1st conference on Symposium on Networked Systems Design and Implementation - Volume 1
NSDI'05 Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation - Volume 2
DAViM: a dynamically adaptable virtual machine for sensor networks
Proceedings of the international workshop on Middleware for sensor networks
Harbor: software-based memory protection for sensor nodes
Proceedings of the 6th international conference on Information processing in sensor networks
Energy-aware compilation for wireless sensor networks
Proceedings of the 2nd international workshop on Middleware for sensor networks
Decoding Code on a Sensor Node
DCOSS '08 Proceedings of the 4th IEEE international conference on Distributed Computing in Sensor Systems
Proceedings of the ICST 2nd international conference on Body area networks
An operating system infrastructure for remote code update in deeply embedded systems
Proceedings of the 1st International Workshop on Hot Topics in Software Upgrades
Proceedings of the 2009 ACM symposium on Applied Computing
Agilla: A mobile agent middleware for self-adaptive wireless sensor networks
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Enhanced Coordination in Sensor Networks through Flexible Service Provisioning
COORDINATION '09 Proceedings of the 11th International Conference on Coordination Models and Languages
Wireless sensor network operating systems: a survey
International Journal of Sensor Networks
Enabling large-scale storage in sensor networks with the Coffee file system
IPSN '09 Proceedings of the 2009 International Conference on Information Processing in Sensor Networks
Community sensor grids: virtualization for sharing across domains
Proceedings of the First Workshop on Virtualization in Mobile Computing
Energy efficient program updating for sensor nodes with flash memory
Proceedings of the 2010 ACM Symposium on Applied Computing
Using meta-code for building task-specific WSNs
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
Nucleos: a runtime system for ultra-compact wireless sensor nodes
EMSOFT '10 Proceedings of the tenth ACM international conference on Embedded software
Servilla: A flexible service provisioning middleware for heterogeneous sensor networks
Science of Computer Programming
TinyVM: an energy-efficient execution infrastructure for sensor networks
Software—Practice & Experience
MELOADES: Methodology for long-term online adaptation of embedded software for heterogeneous devices
Journal of Systems Architecture: the EUROMICRO Journal
Surviving sensor node failures by MMU-less incremental checkpointing
Journal of Systems and Software
Hi-index | 0.00 |
In-situ reconfiguration of software is indispensable in embedded networked sensing systems. It is required for re-tasking a deployed network, fixing bugs, introducing new features and tuning the system parameters to the operating environment. We present a system that supports software recon-figuration in embedded sensor networks at multiple levels. The system architecture is based on an operating system consisting of a fixed tiny static kernel and binary modules that can be dynamically inserted, updated or removed. On top of the operating system is a command interpreter, implemented as a dynamically extensible virtual machine, that can execute high-level scripts written in portable byte code. Any binary module dynamically inserted into the operating systems can register custom extensions in the virtual machine interpreter, thus allowing the high-level scripts executed by the virtual machine to efficiently access services exported by a module, such as tuning module parameters. Together these system mechanisms permit the exibility of selecting the most appropriate level of reconfiguration. In addition to detailing the system architecture and the design choices, the paper presents a systematic analysis of exibility versus cost tradeoffs provided by these mechanisms.