Results 1 - 10
of
53
Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors
, 2004
"... of tiny networked devices that communicate untethered. For large scale networks it is important to be able to dynamically download code into the network. In this paper we present Contiki, a lightweight operating system with support for dynamic loading and replacement of individual programs and servi ..."
Abstract
-
Cited by 179 (23 self)
- Add to MetaCart
of tiny networked devices that communicate untethered. For large scale networks it is important to be able to dynamically download code into the network. In this paper we present Contiki, a lightweight operating system with support for dynamic loading and replacement of individual programs and services. Contiki is built around an event-driven kernel but provides optional preemptive multithreading that can be applied to individual processes. We show that dynamic loading and unloading is feasible in a resource constrained environment, while keeping the base system lightweight and compact.
Rapid development and flexible deployment of adaptive wireless sensor network applications
- In Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS’05
, 2005
"... Wireless sensor networks (WSNs) are difficult to program and usually run statically-installed software limiting its flexibility. To address this, we developed Agilla, a new middleware that increases network flexibility while simplifying application development. An Agilla network is deployed with no ..."
Abstract
-
Cited by 88 (15 self)
- Add to MetaCart
Wireless sensor networks (WSNs) are difficult to program and usually run statically-installed software limiting its flexibility. To address this, we developed Agilla, a new middleware that increases network flexibility while simplifying application development. An Agilla network is deployed with no pre-installed application. Instead, users inject mobile agents that spread across nodes performing application-specific tasks. Each agent is autonomous, allowing multiple applications to share a network. Programming is simplified by allowing programmers to create agents using a high-level language. Linda-like tuple spaces are used for inter-agent communication and context discovery. This preserves each agent’s autonomy while providing a rich infrastructure for building complex applications, and marks the first time mobile agents and tuple spaces are used in a unified framework for WSNs. Our efforts resulted in an implementation for MICA2 motes and the development of several applications. The implementation consumes a mere 41.6KB of code and 3.59KB of data memory. An agent can migrate 5 hops in less than 1.1 seconds with 92 % reliability. In this paper, we present Agilla and provide a detailed evaluation of its implementation, an empirical study of its overhead, and a case study demonstrating its use. 1
Macro-programming Wireless Sensor Networks using Kairos
"... The literature on programming sensor networks has, by and large, focused on providing higher-level abstractions for expressing local node behavior. Kairos is a natural next step in sensor network programming in that it allows the programmer to express, in a centralized fashion, the desired global b ..."
Abstract
-
Cited by 77 (3 self)
- Add to MetaCart
The literature on programming sensor networks has, by and large, focused on providing higher-level abstractions for expressing local node behavior. Kairos is a natural next step in sensor network programming in that it allows the programmer to express, in a centralized fashion, the desired global behavior of a distributed computation on the entire sensor network. Kairos’ compile-time and runtime subsystems expose a small set of programming primitives, while hiding from the programmer the details of distributed code generation and instantiation, remote data access and management, and inter-node program flow coordination. Kairos ’ runtime is greatly simplified by assuming eventual consistency in node state; this assumption underlies many practical distributed computations proposed for sensor networks. In this paper, we describe Kairos ’ programming model, and the flexibility and robustness it affords programmers. We demonstrate its suitability, through actual implementation, for a variety of distributed programs—both infrastructure services and signal processing tasks—typically encountered in sensor network literature: routing tree construction, localization, and object tracking. Our experimental results suggest that Kairos does not adversely affect the performance or accuracy of distributed programs, while our implementation experiences suggest that it greatly raises the level of abstraction presented to the programmer.
Active Sensor Networks
, 2005
"... We propose using application specific virtual machines (ASVMs) to reprogram deployed wireless sensor networks. ASVMs provide ..."
Abstract
-
Cited by 65 (8 self)
- Add to MetaCart
We propose using application specific virtual machines (ASVMs) to reprogram deployed wireless sensor networks. ASVMs provide
Efficient Code Distribution in Wireless Sensor Networks
, 2003
"... The need to reprogramme a wireless sensor network may arise from changing application requirements, bug fixes, or during the application development cycle. Once deployed, it will be impractical at best to reach each individual node. Thus, a scheme is required to wirelessly reprogramme the nodes. We ..."
Abstract
-
Cited by 64 (0 self)
- Add to MetaCart
The need to reprogramme a wireless sensor network may arise from changing application requirements, bug fixes, or during the application development cycle. Once deployed, it will be impractical at best to reach each individual node. Thus, a scheme is required to wirelessly reprogramme the nodes. We present an energy-efficient code distribution scheme to wirelessly update the code running in a sensor network. Energy is saved by distributing only the changes to the currently running code. The new code image is built using an edit script of commands that are easy to process by the nodes. A small change to the programme code can cause many changes to the binary code because the addresses of functions and data change. A naive approach to building the edit script string would result in a large script. We describe a number of optimisations and present experimental results showing that these significantly reduce the edit script size.
Run-time dynamic linking for reprogramming wireless sensor networks
- ACM SenSys
, 2006
"... From experience with wireless sensor networks it has become apparent that dynamic reprogramming of the sensor nodes is a useful feature. The resource constraints in terms of energy, memory, and processing power make sensor network reprogramming a challenging task. Many different mechanisms for repro ..."
Abstract
-
Cited by 49 (5 self)
- Add to MetaCart
From experience with wireless sensor networks it has become apparent that dynamic reprogramming of the sensor nodes is a useful feature. The resource constraints in terms of energy, memory, and processing power make sensor network reprogramming a challenging task. Many different mechanisms for reprogramming sensor nodes have been developed ranging from full image replacement to virtual machines. We have implemented an in-situ run-time dynamic linker and loader that use the standard ELF object file format. We show that run-time dynamic linking is an effective method for reprogramming even resource constrained wireless sensor nodes. To evaluate our dynamic linking mechanism we have implemented an application-specific virtual machine and a Java virtual machine and compare the energy cost of the different linking and execution models. We measure the energy consumption and execution time overhead on real hardware to quantify the energy costs for dynamic linking. Our results suggest that while in general the overhead of a virtual machine is high, a combination of native code and virtual machine code provide good energy efficiency. Dynamic run-time linking can be used to update the native code, even in heterogeneous networks.
EnviroSuite: An Environmentally Immersive Programming Framework for Sensor Networks
- ACM Transactions on Embedded Computing Systems
, 2006
"... Sensor networks open a new frontier for embedded distributed computing. Paradigms for sensor network programming in the large have been identified as a significant challenge towards developing large-scale applications. Classical programming languages are too low-level. This paper presents the design ..."
Abstract
-
Cited by 40 (10 self)
- Add to MetaCart
Sensor networks open a new frontier for embedded distributed computing. Paradigms for sensor network programming in the large have been identified as a significant challenge towards developing large-scale applications. Classical programming languages are too low-level. This paper presents the design, implementation, and evaluation of EnviroSuite, a programming framework that introduces a new paradigm, called environmentally immersive programming, to abstract distributed interactions with the environment. Environmentally immersive programming refers to an object-based programming model in which individual objects represent physical elements in the external environment. It allows the programmer to think directly in terms of environmental abstractions. EnviroSuite provides language primitives for environmentally immersive programming that map transparently into a support library of distributed algorithms for tracking and environmental monitoring. We show how nesC code of realistic applications is significantly simplified using EnviroSuite, and demonstrate the resulting system performance on Mica2 and XSM platforms.
TinyCubus: A Flexible and Adaptive Framework for Sensor Networks
- In EWSN’05
, 2005
"... With the proliferation of sensor networks and sensor network applications, the overall complexity of such systems is continuously increasing. Sensor networks are now heterogeneous in terms of their hardware characteristics and application requirements even within a single network. In addition, the r ..."
Abstract
-
Cited by 27 (7 self)
- Add to MetaCart
With the proliferation of sensor networks and sensor network applications, the overall complexity of such systems is continuously increasing. Sensor networks are now heterogeneous in terms of their hardware characteristics and application requirements even within a single network. In addition, the requirements of currently supported applications are expected to change over time. All of this makes developing, deploying, and optimizing sensor network applications an extremely difficult task. In this paper, we present the architecture of TinyCubus, a flexible and adaptive cross-layer framework for TinyOSbased sensor networks that aims at providing the necessary infrastructure to cope with the complexity of such systems. TinyCubus consists of a data management framework that selects and adapts both system and data management components, a cross-layer framework that enables optimizations through cross-layer interactions, and a configuration engine that installs components dynamically. Furthermore, we show the feasibility of our architecture by describing and evaluating a code distribution algorithm that uses application knowledge about the sensor topology in order to optimize its behavior.
Remote incremental linking for energy-efficient reprogramming of sensor networks
- In Proceedings of the second European Workshop on Wireless Sensor Networks
, 2005
"... With sensor networks expected to be deployed for long periods of time, the ability to reprogram them remotely is necessary for providing new services, fixing bugs, and enhancing applications and system software. Given the envisioned scales of future sensor network deployments, their restricted acces ..."
Abstract
-
Cited by 26 (4 self)
- Add to MetaCart
With sensor networks expected to be deployed for long periods of time, the ability to reprogram them remotely is necessary for providing new services, fixing bugs, and enhancing applications and system software. Given the envisioned scales of future sensor network deployments, their restricted accessibility, and the limited energy and computing resources of sensors, transmitting raw binary images is inefficient. We present a technique to minimize the cost of application evolution by remotely and incrementally linking updated modules at the base station, and distributing deltas of the pre-linked software modules. This paper provides details of our implementation, some preliminary results, and surveys critical research issues in developing a comprehensive framework for reprogramming sensor networks. 1.
Spatial Programming using Smart Messages: Design and Implementation
- In International Conference on Distributed Computing Systems (ICDCS’04
, 2004
"... model for outdoor distributed embedded systems. Central to SP are the concepts of space and spatial reference, which provide applications with a virtual resource naming in networks of embedded systems. A network resource is referenced using its expected physical location and properties. Together wit ..."
Abstract
-
Cited by 23 (7 self)
- Add to MetaCart
model for outdoor distributed embedded systems. Central to SP are the concepts of space and spatial reference, which provide applications with a virtual resource naming in networks of embedded systems. A network resource is referenced using its expected physical location and properties. Together with other SP features, such as reference consistency and access timeout, they help programmers cope with highly dynamic network configurations in a network-transparent fashion.

