Übersicht. Laufzeitumgebungen Fallstudie TinyOS

Size: px
Start display at page:

Download "Übersicht. Laufzeitumgebungen Fallstudie TinyOS"

Transcription

1 Übersicht Beispielanwendungen Sensor-Hardware und Netzarchitektur Herausforderungen und Methoden MAC-Layer-Fallstudie IEEE Energieeffiziente MAC-Layer WSN-Programmierung Laufzeitumgebungen Fallstudie TinyOS 80

2 Case study embedded OS: TinyOS & nesc TinyOS developed by UC Berkeley as runtime environment for their motes nesc as adjunct programming language Goal: Small memory footprint Sacrifices made e.g. in ease of use, portability Portability somewhat improved in newer version Most important design aspects Component-based system Components interact by exchanging asynchronous events Components form a program by wiring them together (akin to VHDL hardware description language) 81

3 TinyOS components Components Frame state information Tasks normal execution program Command handlers Event handlers Handlers Form a component s interface Understand and emit commands & events Hierarchically arranged Events pass upward from hardware to higher-level components Commands are passed downward init start stop fired Command handlers TimerComponent Tasks setrate fire Frame Event handlers 82

4 Concurrency Tasks perform arbitrary, long computation Have to be run to completion since no noncooperative multi-tasking is implemented No need for stack management, tasks are atomic with respect to each other However, we need a way to handle interrupts by preemption NesC allows the definition of functions that can run preemptively (to handle interrupts) Typically such function must not execute an indeterminate amount of time Only post a regular task to perform further action 83

5 Sync and Async By default functions (i.e. commands and events) are sync (e.g. can t be preempted) Only functions labeled async can run preemptively Example: async command void led0on(); For example all interrupt handlers must be async Async functions can only call async commands and signal async events How to call a sync function from within an async one? post a task to call these functions posting a task is async; tasks themselves are always sync So why use tasks at all? Why not labeling everything async? sync functions can t lead to race conditions async can lead the system into inconsistent states E.g. concurrent access to a variable 84

6 Atomic However, concurrent access to a code fragment can be made atomic Example: command bool increment() { atomic { a++; b = a + 1; } } So why not sprinkling the code with atomic blocks? Atomic blocks have a CPU cost You should minimize how many atomic blocks you have 85

7 Split-phase programming Handler/task characteristics and separation has consequences for programming model How to implement a blocking call to another component? Example: Order another component to send a packet Blocking function calls are not an option! Split-phase programming First phase: Issue the command to another component Receiving command handler will only receive the command, post it to a task for actual execution and returns immediately Returning from a command invocation does not mean that the command has been executed! Second phase: Invoked component notifies invoker by event that command has been executed Consequences e.g. for buffer handling Buffers can only be freed when completion event is received 86

8 Structuring commands/events into interfaces Many commands/events can add up nesc solution: Structure corresponding commands/events into interface types Example: Structure timer into three interfaces StdCtrl Timer Clock Build configurations by wiring together corresponding interfaces init StdCtrl start stop fired Timer TimerComponent Clock setrate fire 87

9 Building components out of simpler ones Wire together components to form more complex components out of simpler ones New interfaces for the complex component StdCtrl Timer StdCtrl Timer TimerComponent Clock Clock HWClock CompleteTimer 88

10 Defining modules and components in nesc 89

11 Wiring components to form a configuration StdCtrl; 90

12 A TinyOS Demonstration (1/2) Some supported methods (Windows & Linux) Manually (Windows: cygwin & RPM, Linux: RPM) Virtual machine image (VMWare, VirtualBox) Example: starting the Xubuntos 2.1 VMWare image Plug in Sensor node first! Start XubunTOS image Login: user = xubuntos, password = tinyos y $ z! setxkbmap de VMPlayer VM Removable Devices USB Devices: Future Technology Devices USB device (Port 1) 91

13 A TinyOS Demonstration (2/2) Hello World Call motelist Call cd /opt/tinyos-2.1-0/apps/blink Call make telosb install Look at BlinkAppC.nc and BlinkC.nc The resource: Demo: Plug in USB device Start Xubuntos 92

14 Zusammenfassung und Literatur Beispielanwendungen Sensor-Hardware und Netzarchitektur Herausforderungen und Methoden MAC-Layer-Fallstudie IEEE Energieeffiziente MAC-Layer WSN-Programmierung 93

15 Zusammenfassung Herausforderungen Energieeffizienz Geringe Rechen- und Speicherkapazität Geringe Kommunikationsbandbreite Erfordert neue Ansätze auf den einzelnen Protokollschichten: z.b. energieeffiziente MAC-Layer Aufweichen von striktem Protokoll-Layering: Cross-Layer- Optimierungen Geräte sind in der Regel keiner Person direkt zugeordnet Neue Sichtweise auf Kommunikation ID-Zentrisch versus Datenzentrisch Maschine-zu-Maschine-Kommunikation 94

16 Literatur Holger Karl and Andreas Willig, Protocols and Architectures for Wireless Sensor Networks, John Wiley & Sons, Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David E. Culler and Kristofer S. J. Pister, System Architecture Directions for Networked Sensors, Proceedings of the 9th International ACM Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Philip Buonadonna, Jason Hill and David Culler, Active Message Communication for Tiny Networked Sensors, Proceedings of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer and David Culler, The nesc language: A holistic approach to networked embedded systems, Proceedings of the ACM Conference on Programming Language Design and Implementation (PLDI),

nesc Ø Programming language for TinyOS and applications Ø Support TinyOS components Ø Whole-program analysis at compile time Ø Static language

nesc Ø Programming language for TinyOS and applications Ø Support TinyOS components Ø Whole-program analysis at compile time Ø Static language nesc Ø Programming language for TinyOS and applications Ø Support TinyOS components Ø Whole-program analysis at compile time q Improve robustness: detect race conditions q Optimization: function inlining

More information

WSN Programming. Introduction. Olaf Landsiedel

WSN Programming. Introduction. Olaf Landsiedel WSN Programming Introduction Olaf Landsiedel Programming WSNs What do we need to write software for WSNs? (or: for any system, like your laptop, cell phone?) Programming language With compiler, etc. OS

More information

WSN Programming. Introduction. Olaf Landsiedel. Programming WSNs. ! What do we need to write software for WSNs?! Programming language

WSN Programming. Introduction. Olaf Landsiedel. Programming WSNs. ! What do we need to write software for WSNs?! Programming language WSN Programming Introduction Lecture 2 Olaf Landsiedel Programming WSNs! What do we need to write software for WSNs?! Programming language " With compiler, etc.! OS / runtime libraries " Access to system

More information

System Architecture Directions for Networked Sensors[1]

System Architecture Directions for Networked Sensors[1] System Architecture Directions for Networked Sensors[1] Secure Sensor Networks Seminar presentation Eric Anderson System Architecture Directions for Networked Sensors[1] p. 1 Outline Sensor Network Characteristics

More information

EVENT DRIVEN SENSOR SYSTEMS

EVENT DRIVEN SENSOR SYSTEMS EVENT DRIVEN SENSOR SYSTEMS GROUP MEMBERS > 1. CHETAN FEGADE 1205166348 2. NIKHIL MASCARENHAS 1204752753 MENTOR > Dr. YANN-HANG LEE Submitted on December 11, 2012 2 INDEX 1. Introduction 3 2. TinyOS...

More information

Group Members: Chetan Fegade Nikhil Mascarenhas. Mentor: Dr. Yann Hang Lee

Group Members: Chetan Fegade Nikhil Mascarenhas. Mentor: Dr. Yann Hang Lee Group Members: Chetan Fegade Nikhil Mascarenhas Mentor: Dr. Yann Hang Lee 1. Introduction 2. TinyGALS programming model 3. TinyOS 4. NesC 5. Middleware 6. Conclusion 7. References 8. Q & A Event driven

More information

Exposure to Sensor Motes

Exposure to Sensor Motes Department of Computer Science Southern Illinois University Carbondale Exposure to Sensor Motes CS 441 WIRELESS & MOBILE COMPUTING Instructor Dr. Kemal Akkaya kemal@cs.siu.edu 1 Section 1: Introduction

More information

Adding Preemption to TinyOS

Adding Preemption to TinyOS 1 Adding Preemption to TinyOS Cormac Duffy 1, Utz Roedig 2, John Herbert 1, Cormac J. Sreenan 1 1 Computer Science Department, University College Cork, Ireland 2 InfoLab21, Lancaster University, Lancaster

More information

A Systematic Framework for Evolving TinyOS

A Systematic Framework for Evolving TinyOS A Systematic Framework for Evolving TinyOS Eric Trumpler, Richard Han University of Colorado, Boulder Eric.Trumpler@colorado.edu, Richard.Han@colorado.edu Abstract TinyOS [1] is a key element of the software

More information

Wireless Sensor Networks (WSN)

Wireless Sensor Networks (WSN) Wireless Sensor Networks (WSN) Operating Systems M. Schölzel Operating System Tasks Traditional OS Controlling and protecting access to resources (memory, I/O, computing resources) managing their allocation

More information

TinyOS. Jan S. Rellermeyer

TinyOS. Jan S. Rellermeyer TinyOS Jan S. Rellermeyer jrellermeyer@student.ethz.ch Overview Motivation Hardware TinyOS Architecture Component Based Programming nesc TinyOS Scheduling Tiny Active Messaging TinyOS Multi Hop Routing

More information

Stackless Preemptive Threads for TinyOS

Stackless Preemptive Threads for TinyOS Stackless Preemptive s for TinyOS William P. McCartney and Nigamanth Sridhar Electrical and Computer Engineering Cleveland State University Cleveland OH 44115 USA Email: {w.p.mccartney,n.sridhar1}@csuohio.edu

More information

nesc Prof. Chenyang Lu How should network msg be handled? Too much memory for buffering and threads

nesc Prof. Chenyang Lu How should network msg be handled? Too much memory for buffering and threads nesc Prof. Chenyang Lu CSE 521S 1 How should network msg be handled? Socket/TCP/IP? Too much memory for buffering and threads Data buffered in network stack until application threads read it Application

More information

TOSSIM simulation of wireless sensor network serving as hardware platform for Hopfield neural net configured for max independent set

TOSSIM simulation of wireless sensor network serving as hardware platform for Hopfield neural net configured for max independent set Available online at www.sciencedirect.com Procedia Computer Science 6 (2011) 408 412 Complex Adaptive Systems, Volume 1 Cihan H. Dagli, Editor in Chief Conference Organized by Missouri University of Science

More information

An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems

An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems embedded systems perspectives and visions Dr. Marco A.A. Sanvido University of California at Berkeley

More information

Introduction to TinyOS

Introduction to TinyOS Fakultät Informatik Institut für Systemarchitektur Professur Rechnernetze Introduction to TinyOS Jianjun Wen 21.04.2016 Outline Hardware Platforms Introduction to TinyOS Environment Setup Project of This

More information

NesJ: a translator for Java to NesC

NesJ: a translator for Java to NesC NesJ: a translator for Java to NesC Jiannan Zhai, Luyao Cheng School of Computing, Clemson University Email: {jzhai, luyaoc}@clemson.edu Abstract Most sensor network research is based on how to program

More information

TinyOS: An Operating System for Wireless Sensor Networks

TinyOS: An Operating System for Wireless Sensor Networks IJCST Vo l. 6, Is s u e 1, Ja n - Ma r c h 2015 ISSN : 0976-8491 (Online) ISSN : 2229-4333 (Print) TinyOS: An Operating System for Wireless Sensor Networks Praveen Budhwar Dept. of Computer Science and

More information

Networking Level Laboratory WSN Software Platform TinyOS: Installation and Configuration

Networking Level Laboratory WSN Software Platform TinyOS: Installation and Configuration A project sponsored by NSF 1 Networking Level Laboratory WSN Software Platform TinyOS: Installation and Configuration A project sponsored by NSF 2 Purpose/Objective: Learn how to install and setup the

More information

TinyOS. Lecture Overview. UC Berkeley Family of Motes. Mica2 and Mica2Dot. MTS300CA Sensor Board. Programming Board (MIB510) 1.

TinyOS. Lecture Overview. UC Berkeley Family of Motes. Mica2 and Mica2Dot. MTS300CA Sensor Board. Programming Board (MIB510) 1. Lecture Overview TinyOS Computer Network Programming Wenyuan Xu 1 2 UC Berkeley Family of Motes Mica2 and Mica2Dot ATmega128 CPU Self-programming 128KB Instruction EEPROM 4KB Data EEPROM Chipcon CC1000

More information

A Virtual Machine-Based Programming Environment for Rapid Sensor Application Development

A Virtual Machine-Based Programming Environment for Rapid Sensor Application Development A Virtual Machine-Based Programming Environment for Rapid Sensor Application Development Jui-Nan Lin and Jiun-Long Huang Department of Computer Science National Chiao Tung University Hsinchu, Taiwan, ROC

More information

Domain-Specific Languages for Wireless Sensor Networks

Domain-Specific Languages for Wireless Sensor Networks Domain-Specific Languages for Wireless Sensor Networks Daniel A. Sadilek Humboldt-Universität zu Berlin Institute for Computer Science Rudower Chaussee 25 12489 Berlin, Germany sadilek@informatik.hu-berlin.de

More information

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM (and Cooja)

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM (and Cooja) Politecnico di Milano Advanced Network Technologies Laboratory Internet of Things TinyOS Programming and TOSSIM (and Cooja) 20 April 2015 Agenda o Playing with TinyOS n Programming and components n Blink

More information

The Emergence of Networking Abstractions and Techniques in TinyOS

The Emergence of Networking Abstractions and Techniques in TinyOS The Emergence of Networking Abstractions and Techniques in TinyOS Sam Madden MIT CSAIL madden@csail.mit.edu With Phil Levis, David Gay, Joe Polastre, Rob Szewczyk, Alec Woo, Eric Brewer, and David Culler

More information

Wireless Embedded Systems and Networking. How to get TinyOS open source dist.

Wireless Embedded Systems and Networking. How to get TinyOS open source dist. Wireless Embedded Systems and Networking Lab Day 5: Part 1: TinyOS Programming on Open Source Distribution Jaein Jeong University of California, Berkeley 1 How to get TinyOS open source dist. Latest version

More information

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM (and Cooja)

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM (and Cooja) Politecnico di Milano Advanced Network Technologies Laboratory Internet of Things TinyOS Programming and TOSSIM (and Cooja) 19 March 2018 Agenda Playing with TinyOS Programming and components Blink Application

More information

Y-THREADS: SUPPORTING CONCURRENCY IN WIRELESS SENSOR NETWORKS

Y-THREADS: SUPPORTING CONCURRENCY IN WIRELESS SENSOR NETWORKS Y-THREADS: SUPPORTING CONCURRENCY IN WIRELESS SENSOR NETWORKS Christopher Nitta 1, Raju Pandey 1, and Yann Ramin 1 1 Department of Computer Science University of California, Davis Davis, CA 95616 {nitta,

More information

Embedded OSes. Carolyn Keenan, Ian Perera, Yu Zhong

Embedded OSes. Carolyn Keenan, Ian Perera, Yu Zhong Embedded OSes Carolyn Keenan, Ian Perera, Yu Zhong Challenges for Embedded OSes Limited Resources Memory Computation Speed Power Real-time, interactive processes Network communication Common approaches

More information

Hardware Design of Wireless Sensors

Hardware Design of Wireless Sensors 1 of 5 11/3/2008 10:46 AM MICA: The Commercialization of Microsensor Motes Miniaturization, integration, and customization make it possible to combine sensing, processing, and communications to produce

More information

Programming Sensor Networks

Programming Sensor Networks Programming Sensor Networks Distributed Computing Group Nicolas Burri Pascal von Rickenbach Overview TinyOS Platform Program Development Current Projects MOBILE COMPUTING 2 Sensor Nodes System Constraints

More information

Politecnico di Milano Advanced Network Technologies Laboratory. TinyOS

Politecnico di Milano Advanced Network Technologies Laboratory. TinyOS Politecnico di Milano Advanced Network Technologies Laboratory TinyOS Politecnico di Milano Advanced Network Technologies Laboratory A Bit of Context on WSNs Technology, Applications and Sensor Nodes WSN

More information

Programming TinyOS. Lesson 3. Basic Structure. Main.nc

Programming TinyOS. Lesson 3. Basic Structure. Main.nc Programming TinyOS Lesson 3 Some of the content from these slides were adapted from the Crossbow Tutorials and from the TinyOS website from Mobsys Tutorials Main.nc Basic Structure Interfaces (xxx.nc)

More information

A VIRTUALLAB APPROACH FOR WIRELESS SENSOR MOTES AND WIRELESS SENSOR NETWORKS

A VIRTUALLAB APPROACH FOR WIRELESS SENSOR MOTES AND WIRELESS SENSOR NETWORKS A VIRTUALLAB APPROACH FOR WIRELESS SENSOR MOTES AND WIRELESS SENSOR NETWORKS Anghel V. CONŢIU, Adina ŢOPA, Vasile T. DĂDÂRLAT Technical University of Cluj-Napoca, Str. Ctin Daicoviciu nr. 15, 400027 Cluj-Napoca,

More information

Introduction to Programming Motes

Introduction to Programming Motes Introduction to Programming Motes Mohamed M. El Wakil http://mohamed.elwakil.net mohamed.elwakil@wmich.edu Wireless Sensornets (WiSe) Laboratory Department of Computer Science Western Michigan University

More information

Microcontroller VU

Microcontroller VU 182.694 Microcontroller VU Martin Perner SS 2017 Featuring Today: TinyOS Part 1 Weekly Training Objective Already done 3.4.4 PWM signals and glitches 3.6.4 TWI (I 2 C) 3.9.1 Keypad This week 3.5.2 Noise

More information

Sensors as Software. TinyOS. TinyOS. Dario Rossi Motivation

Sensors as Software. TinyOS. TinyOS. Dario Rossi Motivation Sensors as Software Dario Rossi dario.rossi@polito.it Motivation Sensor networks Radically new computing environments Rapidly evolving hardware technology The key missing technology is system software

More information

Program Representations for Testing Wireless Sensor Network Applications

Program Representations for Testing Wireless Sensor Network Applications Program Representations for Testing Wireless Sensor Network Applications Nguyet T.M. Nguyen Department of Computer Science University of Virginia ntn3a@cs.virginia.edu Mary Lou Soffa Department of Computer

More information

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM

Politecnico di Milano Advanced Network Technologies Laboratory. Internet of Things. TinyOS Programming and TOSSIM Politecnico di Milano Advanced Network Technologies Laboratory Internet of Things TinyOS Programming and TOSSIM 11 April 2011 Agenda Playing with TinyOS Programming and components Blink Application Using

More information

WSN Programming: From Abstractions To Running Code

WSN Programming: From Abstractions To Running Code WSN Programming: From Abstractions To Running Code Luca Mottola www.sics.se/~luca Principles of Wireless Sensor Networks, KTH, September 14 th, 2009 A part of Swedish ICT WSN Programming Ease of programming

More information

Starburst SSD: An Efficient Protocol for Selective Dissemination

Starburst SSD: An Efficient Protocol for Selective Dissemination Starburst SSD: An Efficient Protocol for Selective Dissemination Tahir Azim Stanford University Stanford, California 9435 Email:tazim@cs.stanford.edu Qasim Mansoor National University of Sciences and Technology

More information

Experiences from a Decade Development

Experiences from a Decade Development Experiences from a Decade of Development Philip Levis Stanford University @OSDI 2012 1 2 Back to 1999... Information technology (IT) is on the verge of another revolution The use of EmNets [embedded networks]

More information

HERO: Hierarchical key management protocol for heterogeneous wireless sensor networks

HERO: Hierarchical key management protocol for heterogeneous wireless sensor networks HERO: Hierarchical key management protocol for heterogeneous wireless sensor networks Boushra Maala and Yacine Challal and Abdelmadjid Bouabdallah Universite de Technologie de Compiegne, UMR CNRS 6599

More information

System Architecture Directions for Networked Sensors. Jason Hill et. al. A Presentation by Dhyanesh Narayanan MS, CS (Systems)

System Architecture Directions for Networked Sensors. Jason Hill et. al. A Presentation by Dhyanesh Narayanan MS, CS (Systems) System Architecture Directions for Networked Sensors Jason Hill et. al. A Presentation by Dhyanesh Narayanan MS, CS (Systems) Sensor Networks Key Enablers Moore s s Law: More CPU Less Size Less Cost Systems

More information

Delay Measurement Time Synchronization for Wireless Sensor Networks

Delay Measurement Time Synchronization for Wireless Sensor Networks Delay Measurement Time Synchronization for Wireless Sensor Networks Su Ping IRB-TR-03-013 June, 2003 DISCLAIMER: THIS DOCUMENT IS PROVIDED TO YOU "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY

More information

MICA The Commercialization of Microsensor Motes

MICA The Commercialization of Microsensor Motes www.sensorsmag.com APRIL 2002 SENSOR TECHNOLOGY AND DESIGN MICA The Commercialization of Microsensor Motes Miniaturization, integration, and customization make it possible to combine sensing, processing,

More information

An Experimental Comparison of Event Driven and Multi-Threaded Sensor Node Operating Systems

An Experimental Comparison of Event Driven and Multi-Threaded Sensor Node Operating Systems An Experimental Comparison of Event Driven and Multi-Threaded Sensor Node Operating Systems Cormac Duffy, John Herbert, Cormac Sreenan Computer Science Department University College Cork, Ireland {c.duffy

More information

Debugging Wireless Sensor Network Simulations

Debugging Wireless Sensor Network Simulations Distributed Computing Debugging Wireless Sensor Network Simulations Semester Thesis Richard Huber rihuber@ee.ethz.ch Distributed Computing Group Computer Engineering and Networks Laboratory ETH Zürich

More information

Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors

Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors Adam Dunkels, Björn Grönvall, Thiemo Voigt Swedish Institute of Computer Science {adam,bg,thiemo}@sics.se Abstract Wireless

More information

Maté. Presentation Outline. Presentation Outline. Introduction - Why? Introduction Mate VM. Introduction - Requirements

Maté. Presentation Outline. Presentation Outline. Introduction - Why? Introduction Mate VM. Introduction - Requirements Maté Maté: : A Tiny Virtual Machine for Sensor Networks Introduction Implementation Evaluation Discussion and Critique Authors: Philip Levis and David Culler Presenter: Fernando Zamith Introduction - Why?

More information

Improvement on Gossip Routing Protocol using TOSSIM in Wireless Sensor Networks

Improvement on Gossip Routing Protocol using TOSSIM in Wireless Sensor Networks Improvement on Routing Protocol using TOSSIM in Wireless Sensor Networks Raju Dutta Narula Institute of Technology Dept. of Mathematics Kolkata, West Bengal Shishir Gupta Indian School of Mines Dept. of

More information

Towards a Resilient Operating System for Wireless Sensor Networks

Towards a Resilient Operating System for Wireless Sensor Networks Towards a Resilient Operating System for Wireless Sensor Networks Hyoseung Kim Hojung Cha Yonsei University, Korea 2006. 6. 1. Hyoseung Kim hskim@cs.yonsei.ac.kr Motivation (1) Problems: Application errors

More information

Hardware Support for a Wireless Sensor Network Virtual Machine

Hardware Support for a Wireless Sensor Network Virtual Machine Hardware Support for a Wireless Sensor Network Virtual Machine Hitoshi Oi The University of Aizu February 13, 2008 Mobilware 2008, Innsbruck, Austria Outline Introduction to the Wireless Sensor Network

More information

Exam TI2720-C/TI2725-C Embedded Software

Exam TI2720-C/TI2725-C Embedded Software Exam TI2720-C/TI2725-C Embedded Software Wednesday April 16 2014 (18.30-21.30) Koen Langendoen In order to avoid misunderstanding on the syntactical correctness of code fragments in this examination, we

More information

Static Analysis of Embedded C

Static Analysis of Embedded C Static Analysis of Embedded C John Regehr University of Utah Joint work with Nathan Cooprider Motivating Platform: TinyOS Embedded software for wireless sensor network nodes Has lots of SW components for

More information

Operating Systems. Operating System Structure. Lecture 2 Michael O Boyle

Operating Systems. Operating System Structure. Lecture 2 Michael O Boyle Operating Systems Operating System Structure Lecture 2 Michael O Boyle 1 Overview Architecture impact User operating interaction User vs kernel Syscall Operating System structure Layers Examples 2 Lower-level

More information

Inter-Context Control-Flow Graph for NesC, with Improved Split-Phase Handling

Inter-Context Control-Flow Graph for NesC, with Improved Split-Phase Handling Inter-Context Control-Flow Graph for NesC, with Improved Split-Phase Handling Arne Wichmann Institute for Software Systems July 30, 2010 Abstract Control-flow graphs (CFG) are a common intermediate representation

More information

Development of Emulation Projects for Teaching Wireless Sensor Networks 1

Development of Emulation Projects for Teaching Wireless Sensor Networks 1 Development of Emulation Projects for Teaching Wireless Sensor Networks Deepesh Jain T. Andrew Yang University of Houston Clear Lake Houston, Texas Abstract In recent years research and development in

More information

Self-Organization in Autonomous Sensor/Actuator Networks [SelfOrg]

Self-Organization in Autonomous Sensor/Actuator Networks [SelfOrg] Self-Organization in Autonomous Sensor/Actuator Networks [SelfOrg] Dr.-Ing. Falko Dressler Computer Networks and Communication Systems Department of Computer Sciences University of Erlangen-Nürnberg http://www7.informatik.uni-erlangen.de/~dressler/

More information

Enhanced Lightweight Medium Access (el-mac) Protocol for Wireless Sensor Network

Enhanced Lightweight Medium Access (el-mac) Protocol for Wireless Sensor Network Enhanced Lightweight Medium Access (el-mac) Protocol for Wireless Sensor Network 1 Rozeha A. Rashid, 1 L.A.Latiff, 1 W.M.A Wan Embong, 1 N. Fisal, 1 S.H.S. Ariffin, 1 S.K. S. Yusof, 2 Anthony Lo 1 Telematic

More information

Hardware OS & OS- Application interface

Hardware OS & OS- Application interface CS 4410 Operating Systems Hardware OS & OS- Application interface Summer 2013 Cornell University 1 Today How my device becomes useful for the user? HW-OS interface Device controller Device driver Interrupts

More information

Reminder. Final exam. Tentative time: December 6th, 4:30pm-5:45pm Location: G26. ECE 1160/2160 Embedded System Design 1

Reminder. Final exam. Tentative time: December 6th, 4:30pm-5:45pm Location: G26. ECE 1160/2160 Embedded System Design 1 Reminder Final exam Tentative time: December 6th, 4:30pm-5:45pm Location: G26 ECE 1160/2160 Embedded System Design 1 Recap from last class Hardware support CMOS, Clock gating, Supply shutdown, Dynamic

More information

An Adaptive Algorithm for Fault Tolerant Re-Routing in Wireless Sensor Networks

An Adaptive Algorithm for Fault Tolerant Re-Routing in Wireless Sensor Networks An Adaptive Algorithm for Fault Tolerant Re-Routing in Wireless Sensor Networks Abstract A substantial amount of research on routing in sensor networks has focused upon methods for constructing the best

More information

The nesc Language: A Holistic Approach to Networked Embedded Systems

The nesc Language: A Holistic Approach to Networked Embedded Systems The nesc Language: A Holistic Approach to Networked Embedded Systems David Gay dgay@intel-research.net Matt Welsh mdw@intel-research.net http://nescc.sourceforge.net Philip Levis pal@cs.berkeley.edu Eric

More information

On Testing Wireless Sensor Networks

On Testing Wireless Sensor Networks On Testing Wireless Sensor Networks Tomasz Surmacz, Bartosz Wojciechowski, Maciej Nikodem, and Mariusz Słabicki Abstract Testing wireless sensor networks (WSNs) is not a trivial task, due to the massively-parallel

More information

TinyOS. Wireless Sensor Networks

TinyOS. Wireless Sensor Networks TinyOS Laboratorio di Sistemi Wireless Ing. Telematica Università Kore Enna Ing. A. Leonardi Wireless Sensor Networks The number of nodes can be very high Nodes are densely deployed Low cost, low power

More information

Versatile Stack Management for Multitasking Sensor Networks

Versatile Stack Management for Multitasking Sensor Networks 2010 International Conference on Distributed Computing Systems Versatile Stack Management for Multitasking Sensor Networks Rui Chu 1,LinGu 2, Yunhao Liu 2,3,MoLi 2, Xicheng Lu 1 1 National Laboratory for

More information

Operating Systems (2INC0) 2018/19. Introduction (01) Dr. Tanir Ozcelebi. Courtesy of Prof. Dr. Johan Lukkien. System Architecture and Networking Group

Operating Systems (2INC0) 2018/19. Introduction (01) Dr. Tanir Ozcelebi. Courtesy of Prof. Dr. Johan Lukkien. System Architecture and Networking Group Operating Systems (2INC0) 20/19 Introduction (01) Dr. Courtesy of Prof. Dr. Johan Lukkien System Architecture and Networking Group Course Overview Introduction to operating systems Processes, threads and

More information

Operating Systems for Multitasking Sensor Networks: A Survey

Operating Systems for Multitasking Sensor Networks: A Survey Operating Systems for Multitasking Sensor Networks: A Survey Pavitha N 1* 1 Department of Computer Engineering, Sinhgad Academy of Engineering, Pune,Maharashtra, India Email: pavithanrai@gmail.com Abstract:

More information

VLM 2 : A Very Lightweight Mobile Multicast System For Wireless Sensor Networks

VLM 2 : A Very Lightweight Mobile Multicast System For Wireless Sensor Networks VLM 2 : A Very Lightweight Mobile Multicast System For Wireless Sensor Networks Anmol Sheth, Brian Shucker, and Richard Han University of Colorado, Department of Computer Science Campus Box 430, Boulder,

More information

Today s Topics. u Thread implementation. l Non-preemptive versus preemptive threads. l Kernel vs. user threads

Today s Topics. u Thread implementation. l Non-preemptive versus preemptive threads. l Kernel vs. user threads Today s Topics COS 318: Operating Systems Implementing Threads u Thread implementation l Non-preemptive versus preemptive threads l Kernel vs. user threads Jaswinder Pal Singh Computer Science Department

More information

ProxyMotes: Linux-based TinyOS Platform for Non-TinyOS Sensors and Actuators

ProxyMotes: Linux-based TinyOS Platform for Non-TinyOS Sensors and Actuators 2012 10th IEEE International Symposium on Parallel and Distributed Processing with s ProxyMotes: -based Platform for Non- Sensors and Actuators Tomasz Paczesny, Tomasz Tajmajer, Jaros aw Domaszewicz, Aleksander

More information

Middleware for Sensor Networks

Middleware for Sensor Networks Middleware for Sensor Networks Krzysztof Piotrowski piotrowski@ihp-ffo.de Background Application Middleware Sensor Network Application Middleware Sensor Network Middleware for Sensor Networks 2 Middleware

More information

Today s Topics. u Thread implementation. l Non-preemptive versus preemptive threads. l Kernel vs. user threads

Today s Topics. u Thread implementation. l Non-preemptive versus preemptive threads. l Kernel vs. user threads Today s Topics COS 318: Operating Systems Implementing Threads u Thread implementation l Non-preemptive versus preemptive threads l Kernel vs. user threads Jaswinder Pal Singh and a Fabulous Course Staff

More information

Table of Contents. Preface... xi

Table of Contents. Preface... xi ,ldr3toc.fm.4587 Page v Thursday, January 20, 2005 9:30 AM Table of Contents Preface................................................................. xi 1. An Introduction to Device Drivers.....................................

More information

New RF Models of the TinyOS Simulator for IEEE Standard

New RF Models of the TinyOS Simulator for IEEE Standard New RF Models of the TinyOS Simulator for IEEE 82.15.4 Standard Changsu Suh, Jung-Eun Joung and Young-Bae Ko R & D Departments, Hanback Electronics Company, Daejeon, Republic of Korea College of Information

More information

A Testbed for Experiments with Sensor/Actuator Networks

A Testbed for Experiments with Sensor/Actuator Networks A Testbed for Experiments with Sensor/Actuator Networks Mohammed Rahimi Rohit Mediratta Karthik Dantu Gaurav S. Sukhatme Robotic Embedded Systems Laboratory Computer Science Department University of Southern

More information

Porting TinyOS to an Amulet2e Sensor Mote

Porting TinyOS to an Amulet2e Sensor Mote University of Manchester School of Computer Science MEng Software Engineering Third Year Project Porting TinyOS to an Amulet2e Sensor Mote by Chris Sienkiewicz Supervisor: Nick Filer 2010 Abstract This

More information

Programming TinyOS. Lesson 2. Execution Flow. Tasks. commands. Events generated by interrupts preempt tasks Tasks do not preempt tasks

Programming TinyOS. Lesson 2. Execution Flow. Tasks. commands. Events generated by interrupts preempt tasks Tasks do not preempt tasks Programming TinyOS Lesson 2 Some of the content from these slides were adapted from the Crossbow Tutorials and from the TinyOS website from Mobsys Tutorials Execution Flow Tasks events commands Hardware

More information

Integrating Concurrency Control and Energy Management in Device Drivers. Chenyang Lu

Integrating Concurrency Control and Energy Management in Device Drivers. Chenyang Lu Integrating Concurrency Control and Energy Management in Device Drivers Chenyang Lu Overview Ø Concurrency Control: q Concurrency of I/O operations alone, not of threads in general q Synchronous vs. Asynchronous

More information

The Mote Connectivity Protocol

The Mote Connectivity Protocol The Mote Connectivity Protocol Young-ri Choi, Mohamed G. Gouda, and Moon C. Kim Department of Computer Sciences The University of Texas at Austin Austin, TX 78712-0233, U.S.A. Email: {yrchoi, gouda, mckim}@cs.utexas.edu

More information

ACme Quick Start Guide

ACme Quick Start Guide ACme Quick Start Guide For Developers http://acme.cs.berkeley.edu/ Xiaofan Jiang :: Fred fxjiang@eecs.berkeley.edu Computer Science Department University of California, Berkeley LICENSE Copyright (c) 2008

More information

Wireless sensor networks dynamic runtime configuration

Wireless sensor networks dynamic runtime configuration Wireless sensor networks dynamic runtime configuration Stefan Dulman 1, Tjerk Hofmeijer 2, Paul Havinga 1 1 EEMCS Faculty, Twente University 2 Ambient Systems, the Netherlands P.O.Box 217, 7500AE, Enschede,

More information

A Foundation for Interoperable Sensor Networks with Internet Bridging

A Foundation for Interoperable Sensor Networks with Internet Bridging A Foundation for Interoperable Sensor Networks with Internet Bridging Abstract Current sensor networks tend to have a solitary focus where the entire sensor network is dedicated to solving a single problem.

More information

Outline. Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler. Motivation. Applications. Mate.

Outline. Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler. Motivation. Applications. Mate. Outline Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler Presented by Mark Tamola CSE 521 Fall 2004 Motivation Mate Code Propagation Conclusions & Critiques 1 2 Motivation

More information

TinyDiffusion Application Programmer s Interface (API) 0.1

TinyDiffusion Application Programmer s Interface (API) 0.1 TinyDiffusion Application Programmer s Interface (API) 0.1 Deepak Ganesan (deepak@cs.ucla.edu) May 12, 2001 1 Introduction This document describes the programming interface to the TinyDiffusion implementation

More information

Modeling Energy Consumption of Wireless Sensor Networks by SystemC

Modeling Energy Consumption of Wireless Sensor Networks by SystemC 2010 Fifth International Conference on Systems and Networks Communications Modeling Energy Consumption of Wireless Sensor Networks by SystemC Wan Du, Fabien Mieyeville, and David Navarro Lyon Institute

More information

Security Issues In Mobile Ad hoc Network Routing Protocols

Security Issues In Mobile Ad hoc Network Routing Protocols Abstraction Security Issues In Mobile Ad hoc Network Routing Protocols Philip Huynh phuynh@uccs.edu Mobile ad hoc network (MANET) is gaining importance with increasing number of applications. It can be

More information

EE458 - Embedded Systems Exceptions and Interrupts

EE458 - Embedded Systems Exceptions and Interrupts EE458 - Embedded Systems Exceptions and Interrupts Outline Exceptions Interrupts References RTC: Chapters 10 CUG: Chapters 8, 21, 23 1 Introduction An exception is any event that disrupts the normal execution

More information

Introduction to Operating. Chapter Chapter

Introduction to Operating. Chapter Chapter Introduction to Operating Systems Chapter 1 1.3 Chapter 1.5 1.9 Learning Outcomes High-level understand what is an operating system and the role it plays A high-level understanding of the structure of

More information

An Application of Specification-based Design of Self-Stabilization to Tracking in Wireless Sensor Networks

An Application of Specification-based Design of Self-Stabilization to Tracking in Wireless Sensor Networks An Application of Specification-based Design of Self-Stabilization to Tracking in Wireless Sensor Networks Murat Demirbas 1 and Anish Arora 2 1 Computer Science & Engineering Dept. University at Buffalo,

More information

An Active Tracking System Using IEEE Based Ultrasonic Sensor Devices

An Active Tracking System Using IEEE Based Ultrasonic Sensor Devices An Active Tracking System Using IEEE 802.15.4-Based Ultrasonic Sensor Devices Shinyoung Yi and Hojung Cha Department of Computer Science, Yonsei University Seodaemun-gu, Shinchon-dong 134, Seoul 120-749,

More information

Experimental Node Failure Analysis in WSNs

Experimental Node Failure Analysis in WSNs Experimental Node Failure Analysis in WSNs Jozef Kenyeres 1.2, Martin Kenyeres 2, Markus Rupp 1 1) Vienna University of Technology, Institute of Communications, Vienna, Austria 2) Slovak University of

More information

Sensors Network Simulators

Sensors Network Simulators Sensors Network Simulators Sensing Networking Qing Fang 10/14/05 Computation This Talk Not on how to run various network simulators Instead What differentiates various simulators Brief structures of the

More information

Mobile and Ubiquitous Computing Routing Protocols. Niki Trigoni

Mobile and Ubiquitous Computing Routing Protocols. Niki Trigoni Mobile and Ubiquitous Computing Routing Protocols Niki Trigoni www.dcs.bbk.ac.uk/~niki niki@dcs.bbk.ac.uk Overview Intro to routing in ad-hoc networks Routing methods Link-State Distance-Vector Distance-vector

More information

Implementation of Gradient Routing in WSNs

Implementation of Gradient Routing in WSNs Implementation of Gradient Routing in WSNs Thomas Watteyne, Kris Pister, Dominique Barthel, Mischa Dohler, Isabelle Auge-Blum BSAC, UC Berkeley, USA Orange Labs, Meylan, France CTTC, Castelldefels, Barcelona,

More information

Concurrent and Distributed Systems Introduction

Concurrent and Distributed Systems Introduction Concurrent and Distributed Systems 8 lectures on concurrency control in centralised systems - interaction of components in main memory - interactions involving main memory and persistent storage (concurrency

More information

Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology

Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology exam Embedded Software TI2726-B January 28, 2019 13.30-15.00 This exam (6 pages) consists of 60 True/False

More information

Introduction to Operating Systems. Chapter Chapter

Introduction to Operating Systems. Chapter Chapter Introduction to Operating Systems Chapter 1 1.3 Chapter 1.5 1.9 Learning Outcomes High-level understand what is an operating system and the role it plays A high-level understanding of the structure of

More information

CHESS: Analysis and Testing of Concurrent Programs

CHESS: Analysis and Testing of Concurrent Programs CHESS: Analysis and Testing of Concurrent Programs Sebastian Burckhardt, Madan Musuvathi, Shaz Qadeer Microsoft Research Joint work with Tom Ball, Peli de Halleux, and interns Gerard Basler (ETH Zurich),

More information

Threads SPL/2010 SPL/20 1

Threads SPL/2010 SPL/20 1 Threads 1 Today Processes and Scheduling Threads Abstract Object Models Computation Models Java Support for Threads 2 Process vs. Program processes as the basic unit of execution managed by OS OS as any

More information