The nesC Language: A Holistic Approach to Networked Embedded Systems - PowerPoint PPT Presentation

Loading...

PPT – The nesC Language: A Holistic Approach to Networked Embedded Systems PowerPoint presentation | free to view - id: 3ee5f-MmQwY



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

The nesC Language: A Holistic Approach to Networked Embedded Systems

Description:

Communication Event Driven Systems. Balance between program ... Joe Twist, BBC news online. Chips everywhere. Problems: Million dollar question?? Privacy ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 26
Provided by: bvds
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: The nesC Language: A Holistic Approach to Networked Embedded Systems


1
The nesC Language A Holistic Approach to
Networked Embedded Systems
Collect
2
Outline
  • Why the need for such systems?
  • What are Motes?
  • What is the holistic approach
  • Overview of NesC
  • TinyOS
  • NesC Design
  • What the future beckons?
  • Strengths of the paper
  • Weaknesses of the paper

3
Why the Need?
  • Getting aggregated data
  • Monitoring devices ( earthquakes, natural
    calamities)
  • Vehicle detection( information highways)
  • Rescue missions( Firefighters)
  • Its all about the money
  • Commoditization of radio hardware

4
What are motes?
  • Small Low powered computers
  • Analogous to smart dust
  • Reactive
  • Data aggregation
  • Spatial Localization
  • Cheap ( range of 50)

5
What is the holistic approach?
  • Guesses?

6
What is the holistic approach?
  • Applications deeply tied to hardware
  • Resources known statically
  • Reusable components used.
  • Hardware/Software boundary varies

7
Overview of NesC
  • Language for networked embedded
  • Systems( used by more than 100 groups)
  • Integrates reactivity to the environment
  • Concurrency
  • Communication Event Driven Systems
  • Balance between program analysis and expressive
    power

8
TinyOS
  • Component based Architecture
  • Tasks and event based concurrency
  • Split Phase operations
  • Request and Response indicated separately.

9
nesC Design
  • Extension of C
  • Whole program analysis
  • Static Language
  • Supports and reflects TinyOS design

10
nesC Design ( More)
  • Component Specification
  • Component Implementation
  • Concurrency and Atomicity
  • Concurrency in NesC
  • Parameterized Interfaces

11
Comparison of NesC with other languages
  • Interfaces
  • Modula-2 and Ada No Explicit binding of
    interfaces
  • ArchJava2 has bidirectional interfaces
  • Modules
  • Analogous to Mesa Modules and configurations
  • Encapsulation
  • Architecture constructed by encapsulation (VHDL)
  • Dynamism
  • C, BOOPL Registration of event handler with
    event producer.
  • Concurrency
  • ESC Enforce ordering contraints
  • LockLint Focus on locking rather than atomicity

12
Applications
  • TinyDB

13
TinyDB
  • Entire sensor network as one single,
    infinitely-long logical table sensors
  • Columns consist of all the attributes defined in
    the network
  • Multiple concurrent queries
  • Network Monitoring
  • In network persistent storage

SELECT MAX(mag) FROM sensors WHERE mag gt
thresh SAMPLE PERIOD 64ms
App
Query, Trigger
Data
TinyDB
Courtesy http//telegraph.cs.berkeley.edu/tinydb/
tinydb_tutorial_icde.ppt
14
Strengths of NesC
  • Inspired by hardware, not tied to it
  • Not a heavyweight language as has minimal
    functionality
  • Helps reduce memory footprint
  • Lack of dynamism helps.
  • Static concurrency checking

15
Disadvantages of NesC
  • Not suitable for embedded, hard real time control
    systems.
  • Not suitable for large scale embedded systems
    e.g. VxWorks, WinCE etc.
  • Unsatisfaction with Parameterized interfaces
  • Might not be suitable for dynamic motes or
    embedded devices that move between networks.(
    Events)

16
Other Applications
  • Timber as an OS for real time embedded systems
  • Timed - embedded Reactive
  • Real time, reactive, concurrent, object
  • oriented language
  • Timber objects include methods vs. tasks and
    communication/event handlers.
  • Enable the scheduler to intervene execution at
    occurrence of interrupt.
  • Dynamic storage allocation
  • Direct real time support.

17
What the future beckons?
  • Better mechanisms to implement multi client
    services
  • Explicit support for FSM- style decompositions
  • Alternate implementations of atomic sections

18
2020
  • What does this look like?
  • Any guesses

"Certainly within the next 10 years we could
wear 20 of garments with electronic components
in them." , Joe Twist, BBC news online
Chips everywhere
Problems Million dollar question?? Privacy
19
The Future is here
  • E-watch
  • Stress Tester
  • Data aggregated and sent to central computer

Smart Cars
Computer Assisted Physical Rehabilitation
20
Whats the fuss all about?
  • Body Area Networks
  • Low power devices
  • Scavenging for power
  • Use low power radio (UWB)
  • Needs more research to be accurate( cant afford
    to miss a heart attack)

21
Support for Middleware
  • Working on this one

22
Strengths of the Paper/NesC
  • Author provides substantial evidence of
    performance improvement using features of NesC
  • Provides comparison with other real time systems
    and how NesC is better

23
Weaknesses of the Paper
  • Not really given any timeline as to what preceded
    NesC and what was the need for such a
    specialized language.
  • Could have given real world applications(
    attractive to an end user)

24
Relevance to embedded systems
HOLD YOUR BREATH!
http//video.google.com/videoplay?docid4993846989
748115450total39start0num10so0typesearch
plindex4
25
References
  • 1 http//citeseer.ist.psu.edu/cache/papers/cs2/5
    04/httpzSzzSzwww.sics.sezSzrealwsn05zSzpaperszSzk
    ero05timber.pdf/timber-as-an-rtos.pdf
  • 2 http//www.jneuroengrehab.com/content/2/1/6
  • 3 http//telegraph.cs.berkeley.edu/tinydb/
  • 4
About PowerShow.com