50 likes | 239 Views
OSGi versus UPnP??? . There is no "versus" here. OSGi is fully complimentary to UPnP. No overlap. UPnP = set of protocols to discover and communicate with networked devices UPnP Implementations could use OSGi as execution environment like they could use Windows, Linux or QNX operating systems
E N D
OSGi versus UPnP??? • There is no "versus" here. OSGi is fully complimentary to UPnP. No overlap. • UPnP = set of protocols to discover and communicate with networked devices • UPnP Implementations could use OSGi as execution environment like they could use Windows, Linux or QNX operating systems • OSGi = environment for Java programs to execute in a well defined and managed environment • OSGi implementations could use UPnP (or Jini, or SLP, or Salutation) to discover and use networked devices
What problem solves OSGi? • The problem of deploying many, independent programs in very large distributed systems • For that purpose, it defines: • An operating environment for programs • Format for downloadable code • A means to discover other programs • Standardizing program interfaces to allow reuse • Life cycle management of downloadable programs
What problem solves UPnP? • Distributed control by humans of networked devices that can come and go dynamically • For that purpose, it defines protocols: • Discovery of devices on a local network • A notification mechanism with publish/subscribe • And a language • A formal language that defines the actions and variables of a device
Comparison on details • OSGi • Java • Executing code • Behavior (Code) • Program-Program oriented • Standardizing Java interfaces • Service is local and fast • UPnP • XML DTD • Communications • Declarative • User oriented • Standardizing XML templates • Service is remote and slow to execute
Behavior, programs! Declaration only! OSGi Framework UPnP declaration of device capabilities <?xml version="1.0"?><Schema name="service-1-0" xmlns="urn:schemas-microsoft-com:datat" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <ElementType name="scpd" content="eltOnly"> <element type="actionList"/> <element type="serviceStateTable"/> </ElementType> <element type="action" minOccurs="0" maxOccurs="*"/>………….…. Remote Bundle IR Bundle OSGi Remote Controller UPnP TV Electronic Program Guide UPnP Bundle Standard TV with IR control