{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

TinyOSNesC_TutorialPart1

TinyOSNesC_TutorialPart1 - EE/CS652 EE/CS652 PartI...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
EE/CS 652: EE/CS 652: An Introduction to TinyOS and NesC  An Introduction to TinyOS and NesC  – Part I – Part I Amitabha Ghosh EE-Systems, USC
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Tutorial Outline Object Oriented Programming (OOP) What is TinyOS? Building blocks Some concepts Some examples Simple demo: concrete applications
Background image of page 2
OOP & Polymorphism OOP is a programming paradigm that uses objects and their interactions to design applications and computer programs inheritance, modularity , polymorphism , and encapsulation Polymorphism the use of a general interface to manipulate things of various specialized types Different types of vehicles may behave slightly differently when requested to stop Each subclass implements stop differently
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
The Notion of an Interface Inheritance Driver Knows only about Vehicle Employer Creates an object of a type Passes that object to Driver V E H I C L E Car Bicycle Airplane D R I V E R move() stop() E M P L O Y E R Object Car Bicycle Airplane move() stop() move() stop() move() stop()
Background image of page 4
Why another OS? Sensor nodes are resource constrained in terms of memory and energy need for fine grained resource management Applications are inherently concurrent and event-driven need for event oriented abstractions and safe concurrent operations Code is highly customized and application specific need for code reusability
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
What is TinyOS? An operating system: open-source development environment a programming language and model (NesC, C-like) a set of services Provides minimal system support to write WSN appls more like a library, small foot-print allows fine grained resource management Builds on component abstraction code reuse possible
Background image of page 6
Building Blocks Components encapsulated unit of functionality two scopes: specification, implementation
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}