Ipsn2009-tutorial-proposal

From TinyOS Wiki
Revision as of 13:24, 22 January 2009 by Gnawali (talk | contribs) (New page: '''1. Tutorial title''' TinyOS: An Operating System for Sensor Network Research and Application Prototypes Contact: Omprakash Gnawali (gnawali@usc.edu) '''2. One or two-page description...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

1. Tutorial title

TinyOS: An Operating System for Sensor Network Research and Application Prototypes

Contact: Omprakash Gnawali (gnawali@usc.edu)

2. One or two-page description of tutorial that clearly states

(i) the scope of tutorial and learning objectives

In this tutorial, we will focus on the features available in TinyOS 2.x that enables us to do sensor network research and application prototypes. Here are tentative list of topics to be covered in the tutorial:

1. TinyOS. We will describe the rationale behind the component-based architecture of TinyOS and an overview of the basic services available in TinyOS.

2. Nesc. Nesc is a programming language that is used to write TinyOS programs. We will go through the basic and advanced features of Nesc.

3. Safe TinyOS. We will describe how Safe TinyOS provides runtime checks to ensure type and memory safety not unlike Java.

4. Threads. We will describe how this alternative concurrency model simplifies certain types of TinyOS programs.

5. Network protocols. We will describe the basic networking protocols available in TinyOS.

6. Hands-on session. We will learn how run simulations and later on embedded sensor platform.

Learning objectives:

- Understand the research problems and applications where TinyOS can be used - Understand TinyOS architecture and a list of available services - Understand how to customize and augment TinyOS services to meet the research and application needs - Learn how to do simulations in TinyOS during the hands-on session


(ii) target audience and expected attendance

Use of TinyOS has the potential to facilitate the research done in the IPSN community. We expect this tutorial to be helpful to professors, students, as well as industrial practitioners to understand what is available in TinyOS and when it is application to their research. Even the students who program in TinyOS will benefit tremendously by learning how to use the new features available in TinyOS 2.1.

(iii) logistic requirements beyond class room style setting for presentation

The hands-on session will have two parts. The simulation tutorial will be done using virtual machines. We will provide the software to participant to install on their Windows or Linux laptops. We will provide a small number of sensor nodes for the segment of the tutorial where we show how to program on a hardware platform.

(iv) a list of previous offerings of the tutorial

We have offered a tutorial in 2005. What conf.?

TinyOS is a collaboration between many educational institutions and companies. We plan to bring several core developers of TinyOS for this tutorial so that the audience gets not only a detailed description and understanding of TinyOS but also the rational behind some of the design decisions that shaped TinyOS architecture and services.

3. Presentation slides

We are attaching presentation slides from our 2005 tutorial to give an idea. The style will be similar but the content significantly revised to describe the newest version of TinyOS.