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

The Home Needs an Operating System (and an App Store)

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 1: The Home Needs an Operating System (and an App Store)

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)

Page 2: The Home Needs an Operating System (and an App Store)

Huge amount of tech in homes

Page 3: The Home Needs an Operating System (and an App Store)

Home users struggle

•Management Nightmare

•Integration Hurdles

Page 4: The Home Needs an Operating System (and an App Store)

A quick example

Unlock?

Yes No

Page 5: The Home Needs an Operating System (and an App Store)

Why developers are not helping

Application

HardwareThe actual devices in the house

Application

TopologyHandle WiFi vs. 3G vs. Eth, Subnets

HardwareThe actual devices in the house

Application

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth, Subnets

HardwareThe actual devices in the house

Application

CoordinationWhen apps disagree, who wins?

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth, Subnets

HardwareThe actual devices in the house

Application

User PreferenceWhat is automated? When? How?

CoordinationWhen apps disagree, who wins?

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth, Subnets

HardwareThe actual devices in the house

Application Logic

User PreferenceWhat is automated? When? How?

CoordinationWhen apps disagree, who wins?

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth, Subnets

HardwareThe actual devices in the house

Page 6: The Home Needs an Operating System (and an App Store)

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

Page 7: The Home Needs an Operating System (and an App Store)

Climate

ControlRemote Lock

Camera-

Based Entry

Video Recording

Interoperability is not sufficient

• Media: DLNA, AirTunes, etc.• Devices: UPnP, SpeakEasy, mDNS,

etc.• Home Auto: Zwave ZigBee, X10, etc.

Page 8: The Home Needs an Operating System (and an App Store)

Monolithic systems are inextensible

• Security: ADT, Brinks, etc.• Academic: EasyLiving, House_n, etc.• Commercial: Control4, Elk M1,

Leviton, etc.

Home Media

Security

Page 9: The Home Needs an Operating System (and an App Store)

An alternative approach: A home-wide operating system

Operating System

Video Rec.

Remote

Unlock

Climate

HomeStoreHomeStore

Page 10: The Home Needs an Operating System (and an App Store)

Goals of HomeOS

•Simplify application development

•Enable innovation and device differentiation

•Simplify user management

Page 11: The Home Needs an Operating System (and an App Store)

Simplify development

…App A

App B

Application Logic

User PreferenceWhat is automated? When?

How?

CoordinationWhen apps disagree, who

wins?

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth,

Subnets

HardwareThe actual devices in the house

Page 12: The Home Needs an Operating System (and an App Store)

Application Logic

User PreferenceWhat is automated? When?

How?

CoordinationWhen apps disagree, who

wins?

DeviceHandle different brands/models

TopologyHandle WiFi vs. 3G vs. Eth,

Subnets

HardwareThe actual devices in the house

Application Logic

User PreferenceWhat is automated? When?

How?

CoordinationWhen apps disagree, who

wins?

DeviceHandle different brands/models

TopologyLogically centralize devices

HardwareThe actual devices in the house

Application Logic

User PreferenceWhat is automated? When?

How?

CoordinationWhen apps disagree, who

wins?

DeviceStandardize at functional layer

TopologyLogically centralize devices

HardwareThe actual devices in the house

Application Logic

User PreferenceWhat is automated? When?

How?

CoordinationAccess control mediates

conflicts

DeviceStandardize at functional layer

TopologyLogically centralize devices

HardwareThe actual devices in the house

Application Logic

User PreferenceUsers’ manage access control

rules

CoordinationAccess control mediates

conflicts

DeviceStandardize at functional layer

TopologyLogically centralize devices

HardwareThe actual devices in the house

Simplify development

…App A

App B

Driver Driver…Port Port

Access Control

Mgmt

UI

Page 13: The Home Needs an Operating System (and an App Store)

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

Page 14: The Home Needs an Operating System (and an App Store)

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

Page 15: The Home Needs an Operating System (and an App Store)

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)

Page 16: The Home Needs an Operating System (and an App Store)

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

Page 17: The Home Needs an Operating System (and an App Store)

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

Page 18: The Home Needs an Operating System (and an App Store)

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