HomeOS CSE 481m April 4, 2011. Lots of tech in homes.

Slides:



Advertisements
Similar presentations
Access Networks: Applications and Policy Nick Feamster CS 6250 Fall 2011 (HomeOS slides from Ratul Mahajan)
Advertisements

COMPUTERS: TOOLS FOR AN INFORMATION AGE Chapter 3 Operating Systems.
Fred P. Baker CCIE, CCIP(security), CCSA, MCSE+I, MCSE(2000)
Categories of I/O Devices
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
View the home as a computer Ratul Mahajan Microsoft Research IEEE CCW, Oct 2011 Joint work with Sharad Agarwal, AJ Brush, Colin Dixon, Bongshin Lee, Stefan.
Computer Hardware & Systems
What’s new presentation XProtect ® Corporate 2013 R2 XProtect ® Expert 2013 R2 XProtect ® Smart Wall 2013.
An Operating System for the Home. HomeOS: An OS for the home HomeOS Video recording Remote unlock Climate control HomeStore Z-Wave, DLNA, UPnP, etc. HomeOS.
Towards commodity smarthomes Ratul Mahajan. Partners in crime A.J. BrushBongshin Lee Sharad AgarwalStefan Saroiu Colin Dixon Frank Martinez.
Lecture 12 Page 1 CS 111 Online Devices and Device Drivers CS 111 On-Line MS Program Operating Systems Peter Reiher.
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,
1 OS Structure, Processes & Process Management. 2 Recap OS functions  Coordinator  Protection  Communication  Resource management  Service provider.
Home Lab: Shared Infrastructure for Home Technology Field Studies A.J. BrushJaeyeon JungRatul MahajanJames Scott.
Course Introduction CSE481M: Home Networking Capstone March 28 th, 2011.
Integration case study Week 8 – Lecture 1. Enrolment request (Workstation) Application server Database server Database New University Student Record System.
Accelerating innovation in home technology Ratul Mahajan.
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
Lecture 23: The Case for HomeOS Xiaowei Yang. Today’s Plan HomeOS – Why & How Final Review – We’ve learned a lot! Course Evaluation.
Packetizer ® Copyright © 2009 H.325: An Application Platform A Closer Look at the “Container” Paul E. Jones Rapporteur Q12/16 April 7,
COGAIN 2009 Petr Novák, Olga Štepánková Home and environment control.
CSIT 320 (Blum)1 Client-Server Interaction Based on Appendix 1 in Computer Networks and Internets, Comer.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
CSE 381 – Advanced Game Programming 3D Game Architecture.
Chapter Three OPERATING SYSTEMS.
Hands-On Microsoft Windows Server 2008
MVC pattern and implementation in java
Chapter 5 Networks Communicating and Sharing Resources
WIDAR Prototype Testing User Interface Software Kevin Ryan NRAO-DRAO Face-to-Face Meeting April 3, 2006.
Lab How to Use WANem Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
Hardware.
An Operating System for the Home PRESENTED BY KARL AND SALEM.
Network Management Fourteen Meeting. Principles Of Network Management Telecommunications management network (TMN) provides a framework for telecommunications.
Device Drivers.
Home Lab: Shared Infrastructure for Home Technology Field Studies A.J. BrushJaeyeon JungRatul MahajanJames Scott.
Section 1: Introducing Group Policy What Is Group Policy? Group Policy Scenarios New Group Policy Features Introduced with Windows Server 2008 and Windows.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Operating Systems. Without an operating system your computer would be useless! A computer contains an Operating System on its Hard Drive. This is loaded.
Operating Systems JEOPARDY Computer Repair NetworkOS OS Tasks ConceptsComponentsMisc
What’s TSP ? Code : STM#340 STM#340: What’s TSP ?
HERTS Paul Larpenteur Lee Murphy CSE 403 – Sp 2003 Hearts Experimental Remote Transportable System.
Chapter 13 Logical Architecture and UML Package Diagrams 1CS6359 Fall 2012 John Cole.
Introduction to Computer and Computer Networking: Part I Xiangming Mu 9/16/2004.
Construction Planning and Prerequisite
OPERATING SYSTEM - program that is loaded into the computer and coordinates all the activities among computer hardware devices. -controls the hardware.
Oracle Data Integrator Agents. 8-2 Understanding Agents.
Networks, Topology, & Architecture Mrs. Wilson Dreamweaver for College & Business.
17 Establishing Dial-up Connection to the Internet Using Windows 9x 1.Install and configure the modem 2.Configure Dial-Up Adapter 3.Configure Dial-Up Networking.
Main Computer Components
HOW A COMPUTER PROCESSES DATA. What is hardware? Hardware is the electric, electronic and mechanical equipment that makes up a computer What is software?
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
2: Operating Systems Networking for Home & Small Business.
MP3 Radio Richard Bannon & Michael Backman. Basic concept FM broadcast MP3 player  Allows you to listen to MP3’s through an FM radio  Better than a.
9NL Ayomi Hasenclever.  You cant touch a software  It is stored in a computer or laptop  Allows the hardware to do something useful, without the software.
Clustering in OpenDaylight
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
Universal IR Controller -- Home Automation. Universal IR Controller Features 360° full range IR launch Wifi, RF communication Remote control Delicate.
Networking Week #10 OBJECTIVES Chapter #6 Questions Review Chapter #8.
Introduction to comp. and prog. CS 101 G 964
Discovering Computers 2012: Chapter 8
Computer Basics: Parts of a Computer? Part I
Introduction to Visual Basic 2008 Programming
Application Development Theory
Human–computer interfaces
Networking for Home and Small Businesses – Chapter 2
Mobile APP Date: 01,10 ,
Infrared Home Controller
Event loops.
Presentation transcript:

HomeOS CSE 481m April 4, 2011

Lots of tech in homes

Problems with tech in homes You easily can’t program it Why not? Lack of standards Diverse devices (most don’t run code) Different connectivity (ZigBee, Zwave, ) Sharing devices is hard Users want different things

What HomeOS does Makes it easier to write apps for the home Uses drivers to hide connectivity differences Standardizes device interfaces Standardizes user control of applications Allows for constrained ‘sharing’ of devices

How it works Operating System Video Rec. Remote Unlock Climate HomeStore

How it works Application Logic User Preference What is automated? When? How? Coordination When apps disagree, who wins? Device Handle different brands/models Topology Handle WiFi vs. 3G vs. Eth, Subnets Hardware The actual devices in the house Application Logic User Preference What is automated? When? How? Coordination When apps disagree, who wins? Device Handle different brands/models Topology Logically centralize devices Hardware The actual devices in the house Application Logic User Preference What is automated? When? How? Coordination When apps disagree, who wins? Device Standardize at functional layer Topology Logically centralize devices Hardware The actual devices in the house Application Logic User Preference What is automated? When? How? Coordination Access control mediates conflicts Device Standardize at functional layer Topology Logically centralize devices Hardware The actual devices in the house Application Logic User Preference Users’ manage access control rules Coordination Access control mediates conflicts Device Standardize at functional layer Topology Logically centralize devices Hardware The actual devices in the house … … App A App B Driver … Port … Access Control Mgmt UI

What we gave you HomeOS.NET project/library to make writing apps easy Silverlight/WP7 SDK for GUI and phone development Includes Drivers for: webcams, IP cameras, media server/player, z-wave devices, SMS notifications, face recognition, etc. Sample applications

Applications Hopefully small pieces of code which orchestrate a series of devices Basic App Architecture 1.Boot, set up any state (windows, connections, etc.) 2.Look for required devices 3.Once having found all devices, enter a loop a.See if relevant devices have showed up or left b.Do whatever useful thing it is supposed to do 4.On quit, clean up state

Drivers Deal with connectivity and device specifics Find the device and establish communication Translate high level commands to low-level Export functionality as Roles & Ports Advertise ports with relevant roles when devices are available Remove ports when devices are no longer available

Finding Devices PortRegistered() and GetAllPortsFromPlatform() Cycle through all ports on boot Listen for new devices over time Might hear about a new device more than once Pick the ones you want Analogous PortDeregistered() Listen for devices being removed

Ports & Roles Port A handle to a device Role Each port has one or more roles Things like lightswitch, dimmerswitch, TV, media server, media player, etc. What applications are actually written against

Invoking an Operation