WikiStart

Version 111 (Jun -, 05/31/2011 01:23 pm)

1 89 Anthony Rowe
2 98 Anthony Rowe
3 99 Anthony Rowe
4 100 Arvind Kandhalu
5 101 Arvind Kandhalu
6 102 Arvind Kandhalu
7 89 Anthony Rowe
[[TracNav(TOC)]]
8 89 Anthony Rowe
9 10 Anthony Rowe
10 76 Anthony Rowe
= Nano-RK: A Wireless Sensor Networking Real-Time Operating System  =
11 76 Anthony Rowe
Nano-RK is a fully preemptive reservation-based real-time operating system (RTOS) from [http://www.cmu.edu Carnegie Mellon University] with multi-hop networking support for use in wireless sensor networks. Nano-RK currently runs on the FireFly Sensor Networking Platform as well as the [wiki:MicaZ] motes. It includes a light-weight embedded resource kernel (RK) with rich functionality and timing support using less than 2KB of RAM and 18KB of ROM. Nano-RK supports fixed-priority preemptive multitasking for ensuring that task deadlines are met, along with support for CPU, network, as well as, sensor and actuator reservations. Tasks can specify their resource demands and the operating system provides
12 34 Anthony Rowe
timely, guaranteed and controlled access to CPU cycles and network packets. Together these resources form virtual energy reservations that allows the OS to enforce system and task level energy budgets. 
13 5 Anthony Rowe
14 1
== News ==
15 111 Jun -
 * 5/31/2011 Paper on [wiki:nanocf] Cooperation framework for macro-programming framework in Wireless Sensor Networks at SECON 2011
16 107 Anthony Rowe
 * 4/12/2010 Paper on [wiki:U-Connect] neighborhood discovery at IPSN 2010
17 98 Anthony Rowe
 * 11/13/2009 Paper on [http://www.andrew.cmu.edu/user/agr/projects/syntonistor/ Syntonistor] for time synchronization wins best paper award [http://sensys.acm.org/2009/program.htm SenSys 2009]
18 93 Anthony Rowe
 * 10/15/2008 Paper on [wiki:Pubs Rate-Harmonized Scheduling] at RTSS 2008
19 87 Anthony Rowe
 * 2/12/2008 New [wiki:releases release] fixes kernel memory bug and adds Windows Support.
20 87 Anthony Rowe
 * 2/7/2008 gcc 4.2.2 with avr-libc 1.6.1 fix multiple minor bugs. Install new toolchain from [wiki:Downloads] page.  
21 84 Anthony Rowe
 * 12/29/2007 [http://www.embedded.com/design/networking/204800543?pgno=1 Embedded.com Article] discusses Nano-RK
22 94 Anthony Rowe
 * 10/20/2007 Paper on [wiki:Pubs Vision-Enabled Sensor Networks] using Nano-RK at RTSS 2007
23 84 Anthony Rowe
 * 10/6/2007 Public Subversion Read Access for pre-beta [wiki:releases release]
24 94 Anthony Rowe
 * 10/16/2006 Paper on [wiki:Pubs Voice Over Sensor Networks] using Nano-RK at RTSS 2006
25 94 Anthony Rowe
 * 9/25/2006 Paper on [wiki:RT-Link] running on Nano-RK wins best paper at SECON 2006
26 94 Anthony Rowe
 * 12/15/2005 Nano-RK paper introduced at RTSS 2005
27 32 Anthony Rowe
28 74 Anthony Rowe
== Features ==
29 74 Anthony Rowe
30 32 Anthony Rowe
 * C GNU tool-chain
31 32 Anthony Rowe
 * Classical Preemptive Operating System Multitasking Abstractions
32 32 Anthony Rowe
 * Real-Time Priority Based Scheduling
33 33 Anthony Rowe
 * Built-in Fault Handling
34 35 Anthony Rowe
  * Task Timing Violations
35 35 Anthony Rowe
  * Stack Integrity
36 35 Anthony Rowe
  * Unexpected Node Restarts
37 35 Anthony Rowe
  * Resource Over-Use 
38 34 Anthony Rowe
  * Low Voltage Detection
39 95 Anthony Rowe
  * Hardware Watchdog Timer
40 95 Anthony Rowe
  * Software Watchdog Timers
41 43 Anthony Rowe
 * Energy Efficient Scheduling based on ''a-prior'' task-set knowledge
42 97 Anthony Rowe
 * Tickless Timer
43 66 Anthony Rowe
 * Small Footprint (<2K RAM, 16K ROM, including link layer)
44 69 Anthony Rowe
 * [wiki:SLIPstream] (a simple gateway to IP network protocol and utility)
45 70 Anthony Rowe
 * [wiki:TimeScope] (a code execution time measurement utility built into the FireFly programmer boards)
46 78 Anthony Rowe
 * [wiki:avr-studio AVR Studio 4 Debugging]  (Simulating Nano-RK code on a single node using AVR Studio 4 is easy)
47 99 Anthony Rowe
 * [wiki:Eclipse] IDE allows for easy development
48 32 Anthony Rowe
49 54 Anthony Rowe
Nano-RK supports various wireless link layer protocols including:
50 36 Anthony Rowe
 * [wiki:RT-Link] for collision free Real-Time communication
51 37 Anthony Rowe
 * [wiki:WiDom] a collision free priority based link layer
52 1
 * [wiki:b-mac] for low-power contention based communication
53 105 Arvind Kandhalu
 * [wiki:U-Connect] a Low-Latency Energy-Efficient Asynchronous Neighbor Discovery protocol
54 109 Anthony Rowe
 * [wiki:pcf-tdma PCF TDMA] Flexible and simple, low-power, one-hop TDMA for both high and low data-rate collection
55 106 Anthony Rowe
56 106 Anthony Rowe
== Getting Help ==
57 106 Anthony Rowe
 * Try posting on our recently (re)added [http://www.nanork.org/discussion Forum]
58 46 Anthony Rowe
59 51 Anthony Rowe
[[Image(htdocs:images/nrk_arch.png)]]
60 48 Anthony Rowe
61 49 Anthony Rowe
Sample Nano-RK architecture figure showing user applications and [wiki:RT-Link].