a file system for system programming in ubiquitous computing n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
A File System for System Programming in Ubiquitous Computing PowerPoint Presentation
Download Presentation
A File System for System Programming in Ubiquitous Computing

Loading in 2 Seconds...

play fullscreen
1 / 19

A File System for System Programming in Ubiquitous Computing - PowerPoint PPT Presentation


  • 106 Views
  • Uploaded on

A File System for System Programming in Ubiquitous Computing. Christian Decker, Michael Beigl, Albert Krohn TecO, University of Karlsruhe Institut for Telematics Telecooperation Office (TecO) www.teco.edu. Outline. Ubiquitous Computing and Devices Development on Ubicomp Devices

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

A File System for System Programming in Ubiquitous Computing


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
a file system for system programming in ubiquitous computing

A File System for System Programming in Ubiquitous Computing

Christian Decker, Michael Beigl, Albert Krohn

TecO, University of Karlsruhe

Institut for Telematics

Telecooperation Office (TecO)

www.teco.edu

outline
Outline
  • Ubiquitous Computing and Devices
  • Development on Ubicomp Devices
  • File System Approach
  • Applications
  • Related Work
  • Conclusion
ubiquitous computing ubicomp
Ubiquitous Computing - Ubicomp
  • … building aware environments

Other areas

  • Safety applications
  • Military applications

AwareHome (GATech)

AwareOffice (TecO)

embedded sensor devices in ubicomp
Embedded Sensor Devices in Ubicomp
  • Limited computing power, 8-bit microcontroller
  • Few kilobytes … 512 kilobytes of Flash memory
  • Customized radio protocols
  • Battery powered
  • Extensible by various sensors

Particles

Motes

Telos

ubicomp development state of the art
Ubicomp Development – State-of-the-Art

Manage a variety of resources, esp. sensors

  • Lightweight OS (e.g. TinyOS)
    • OS shields resources, e.g. sensors
    • No direct access
    • Communication through events -> event dispatching
  • Library based access models
    • Abstract access functions
    • Direct access, virtually no overhead
  • But… shielding/abstraction causes still confusion
ubicomp development case study
Ubicomp Development – Case Study
  • Study comprising of various students, practical courses and projects

Findings

  • Experience lack
    • Huge number of various sensor interfaces
    • Developers are stuck to the well-known
  • Application complexity
    • Developer focus on distributed application logic
    • Rich sensor interfaces, poorly used
  • Interface breach
    • Sensor interfaces similar, only slight difference
    • Hard to realize -> debugging
file system approach
File System Approach

Design principles

  • Developer in the center
  • Support developer to follow the simplest way
  • Easy-to-understand interfaces -> generic

Support in two ways

  • Uniform representation of all resources
  • Uniform access model
name space
Name Space
  • File = entity identifying a resource
  • Directory = special file identifying collections of files
  • Uniform, hierarchical namespace
    • /dev/- direct resources, e.g. sensors, memory, power supply, communication interface
    • /context/ - mediated resources, access direct resources, application functions, algorithms
    • /usr/ - data files
access model
Access Model

Fundamental operations

  • read(..) and write(..) – data transfer operations
  • Resources are coupled with specific r/w methods

Example: read(1, buf, 1)

Additional operations

  • open(..)
  • mount(..)/umount(..)
  • getType(..)

Type System

  • Type of resource, developer decides
  • Compatibility in resource combinations

VoltageSensorGet(int &v)

{

...

}

NOP()

{

;

}

particle file system
Particle File System
  • File system for Particle platform(Ubicomp device, sensor network)
  • 18f6720 PIC microcontroller
  • 128KB FlashROM, 4KB RAM, 512KB external Flash

Resources

  • Memory – 512KB Flash
  • Power supply – AAA battery
  • Wireless communication
  • Sensors – acceleration, light, force, temperature, audio, ball switch
  • Actuators – LEDs, speaker
application telnet
Application: Telnet

“/context/telnet/less /usr/file1“

PC

Particle

application telnet cont
Application: Telnet cont.
  • Telnet application combines resources
  • “context/telnet/less“ is a resource
  • Application function represented in the file system
  • “less” checks for type of argument
  • “less” denies access to /dev/accl, but grants access to /usr/file1
application over the air programming
Application: Over-the-Air-Programming
  • Programming is file copy!

FTP Proxy

CompiledProgram

Network

Bridge

Particle

performance
Performance

File system

  • ~1900 bytes RAM
  • ~2100 bytes ROM

File library

  • ~10 kilobytes ROM

Access overhead

  • *buf = f()
    • Call + store result
    • 26 instruction cycles
  • read(fd,buf,1)
    • lookup for function pointers + call + store result
    • More parameters
    • 100 instruction cycles
related work
Related Work

Plan9

  • All resources are files and accessed like files
  • Client/server concept

Dynamo, Context-aware file system (CFS)

  • Middleware and infrastructure solutions
  • Context-based sharing and visibility of data
  • PDA like devices

MatchBox, Micro-ROM

  • File systems for small embedded sensor devices
  • Only for data storage in files
conclusion and outlook
Conclusion and Outlook

File system

  • Uniform resource representation (direct/mediated)
  • Uniform access on resources (read/write)
  • Combining resources (compatibility by type system)
  • Implementation on embedded sensor system (ParticleFS)
  • Applications: Telnet + Over-the-Air-Programming

Future work

  • Unblocking resource access
  • Represent remote resources
  • Shell/Macroprogramming