2.6 Distributed Nature
There is a clear distinction between the services that should be supported by middleware and OS
in traditional systems. This is masked in WSN due to cross layer interaction support which is a
prominent feature for these kind of systems.
Sensor nodes in WSN are loosely coupled and some times deployed across a large geographical
area. The scale of the network some times is in the order of thousands of sensor nodes. Each
individual node has its own processing power, system software to run and the co-operation among
the nodes happen through exchange of messages.
In a distributed environment, the goal of an operating system should be to manage the different
nodes spread over the region and make them appear as a single virtual entity. This involves pro-
viding communicational transparency, failure transparency, heterogeneity and scalability support
for the application.
2.6.1 Inter-Node Communication
Application developer composes his program with a single entity view of the system. This com-
position involves various interactions that appears to be among components on the same node.
Physically these components are distributed across the network. The system has to optimally place
these components so that the communication cost is minimized. Other issues related to communi-
cation such as low bandwidth, link failures and inaccessibility of the nodes should be masked from
the application developer.
2.6.2 Failure Handling and Disconnection
Nodes in the network can fail or disconnect due to physical damage, harsh environmental interfer-
ences, energy depletion, node mobility and communication failures. This may result in topological
changes. The failure or disconnection of nodes in the network should not affect the running appli-
cations. The operating system design should be robust to handle this issue.
2.6.3 Heterogeneity
Heterogeneity in the network arrives due to varying level of node capabilities. This causes different
nodes to be present in the network with different capabilities. These capabilities can be in terms
of memory, sensing modality or residual energy, software components residing at the node. Many
of the practical sensor networks are heterogeneous [37] in their sensing capability. Due to this,
they can incur low deployment cost. System should mask heterogeneity to the user by optimally
distributing the load on the nodes according to their capabilities.
2.6.4 Scalability
Scalability here refers to the size of the network [81]. As the system is composed of large number
of nodes, the system algorithms should work with an acceptable performance degradation with
increase in the number of nodes.
In WSN there are subtle differences related to some issues in designing middleware [38] and
operating system. Some of the above issues seems to look like middleware issues but virtual machine
approaches [23] and distributed operating systems [23] [26] in WSN did concerned about them in
designing.
The above issues should be considered while designing a operating system for sensor networks.
Most of them are purely specific to sensor networks and the designer should pay more attention
while designing an operating system for WSN.
6