180 likes | 280 Views
The Home Needs an Operating System (and an App Store). Colin Dixon (University of Washington) October 20 th , 2010 Ratul Mahajan , Sharad Agarwal , A.J. Brush, Bongshin Lee, Stefan Saroiu , Victor Bahl (MSR Redmond). Huge amount of tech in homes. Home users struggle.
E N D
The Home Needs an Operating System (and an App Store) Colin Dixon(University of Washington) October 20th, 2010 Ratul Mahajan, Sharad Agarwal, A.J. Brush, Bongshin Lee, Stefan Saroiu, Victor Bahl (MSR Redmond)
Home users struggle • Management Nightmare • Integration Hurdles
A quick example Unlock? Yes No
Vendors only build islands • Vertically integrate hardware and software • Seldom make use of other vendors’ devices • No single vendor comes close to providing all the devices a home needs
Interoperability is not sufficient • Media: DLNA, AirTunes, etc. • Devices: UPnP, SpeakEasy, mDNS, etc. • Home Auto: ZwaveZigBee, X10, etc. Video Recording Climate Control Camera-Based Entry Remote Lock
Monolithic systems are inextensible • Security: ADT, Brinks, etc. • Academic: EasyLiving, House_n, etc. • Commercial: Control4, Elk M1, Leviton, etc. Home Media Security
An alternative approach: A home-wide operating system HomeStore Video Rec. Remote Unlock Climate Operating System
Goals of HomeOS • Simplify application development • Enable innovation and device differentiation • Simplify user management
Simplify development App A App B … …
Simplify development App A App B … Mgmt UI Access Control Port Port Driver Driver … … …
Roles in HomeOS • Roles are functional descriptions of ports • lightswitch, television, display, speakers, etc. • App developers program against roles • Enable vendors to innovate/differentiate • Anyone can create a new role • e.g., SonyBraviaTV vs. television • Allows new functionality to be rapidly exposed • Commodity vendors can still participate
Simplify user management • Conducted a field study • Modern homes with automation & other tech • 14 homes, 31 people • Users’ needs for access control • Applications as security principals • Time in access control decisions • Confidence in their configuration
Management primitives • Datalog access control rules • (port, group, module, time-start, time-end, day, priority, access-mode) • Reliable reverse perspectives help users confidently configure access control • User accounts • Can be restricted by time (guests) • Application manifests • Specify role requirements for compatibility testing • Simplifies rule setup (only when roles match)
Implementation status • Built on the .NET CLR • ~15,000 lines of C# • ~2,500 kernel • 11 Applications • Average ~300 lines/app • Music Follows the Lights • Play, pause & transfer music where lights are on/off • Two-factor Authentication • Based on spoken password and face recognition
Open questions/Ongoing work • Additional evaluation • Is it easy to write apps and drivers? • Is it easy to manage? • Does it scale to large homes? • Deploy & support application development • Explore business/economic issues
Conclusion • A home-wide OS can make home technology manageable and programmable • HomeOS balances stakeholder desires • Developers: abstracts four sources of heterogeneity • Vendors: enables innovation and differentiation • Users: provides mgmt. primitives match mental models http://research.microsoft.com/homeos