1 / 19

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. Ubiquitous Computing and Devices Development on Ubicomp Devices

javan
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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Outline • Ubiquitous Computing and Devices • Development on Ubicomp Devices • File System Approach • Applications • Related Work • Conclusion

  3. Ubiquitous Computing - Ubicomp • … building aware environments Other areas • Safety applications • Military applications AwareHome (GATech) AwareOffice (TecO)

  4. 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

  5. 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

  6. 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

  7. 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

  8. Resources

  9. Resources cont.

  10. 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

  11. 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() { ; }

  12. 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

  13. Application: Telnet “/context/telnet/less /usr/file1“ PC Particle

  14. 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

  15. Application: Over-the-Air-Programming • Programming is file copy! FTP Proxy CompiledProgram Network Bridge Particle

  16. 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

  17. 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

  18. 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

  19. Thank you Q&A

More Related