The Proximal Workspace Architecture: A Latency- focused Approach to Supporting Context-Aware Applications Cynthia Taylor UC San Diego 1
• Background and Motivation • Small Devices • Big Applications • Thin Clients • System Architecture • Adaptation of Google Earth • Next Steps 2
Small Devices iPhone Netbook Zypad Wearable Nanotech Contact Lens Display (UW) 3
Big Applications Virtual Worlds Maps Augmented Reality • Data/Computation Intensive, Context Dependent 4
Google Earth 3D Ancient Rome • Interactively explore ancient Roman buildings 5
Application Characteristics • Data Intensive • Computation Intensive • Sensor data • Frequent user-interaction • Poor native performance on client 6
• Background and Motivation • System Architecture • Terminals • World • Architecture • Adaptation of Applications • Completed Work • Next Steps 7
Terminals web user’s GPS video server server Work earpiece game web space server server PDA terminals world • A collection of input/output devices and sensors 8
World web user’s GPS video server server Work earpiece game web space server server PDA terminals world • Various servers scattered over the internet. 9
Architecture web user’s low high GPS video server server latency latency Work earpiece game web space server server PDA terminals world 10
The Purpose of the Workspace web user’s GPS video server server Work earpiece game web space server server PDA terminals world • Mediates between world and client, adjusting for performance • Quick communication with the client • Dependence on physical location runs • Add additional functionality to programs • Create mash-ups between multiple programs 11
• Background and Motivation • System Architecture • Adaptation of Google Earth • Next Steps 12
Data Model 13
Google Earth: Unmodified display Google server GE app client 14
Google Earth display forwarder video 3D glasses navigator Google GE app server netbook sensor world interpreter terminals workspace 15
Next Steps • Focus on I/O issues 16
I/O Devices • RFID • camera • barcode reader • microphone • mouse • keyboard • accelerometer • biometric sensors • GPS • touch sensor • temperature sensor • sound card • light sensor • video card 17
I/O 1 ms device application 3 ms device application 18
I/O device driver application network ? device driver ? application 19
functions • Caching • Transforming • Adding Timestamps • Polling • Averaging • Buffering • Discarding Non-Recent Updates • Encrypting • Predicting Future Updates • Compressing • Synchronizing Multiple Datastreams 20
Recommend
More recommend