OSGi World Congress Presentation Template

Download Report

Transcript OSGi World Congress Presentation Template

OSGi &
Other Technologies
Peter Kriens, aQute
OSGi Fellow
OSGi Service Platform
OSGi & Other Technologies
Overview

OSGi's Place In The World

The OSGi Service Platform?

Java & OSGi

UPnP & OSGi

Microsoft .NET

So Why OSGi?
www.aQute.biz
OSGi Service Platform
OSGi's Place In The World


Building systems is hard
Connected systems are even
harder to build
 Distribution adds failure points
 Difficult to fix bugs remotely
 Upgrades

How can the devices on a
network inter-operate?
 New devices
 New services
 New standards


It is a giant puzzle!
The keyword is extendibility
www.aQute.biz
OSGi Service Platform
OSGi's Place In The World


The OSGi specifications define
a Java environment, just like an
operating system, for networked
services.
A networked service:
 Can be deployed over a
network
 Adds a variety of functions to
the device
 May be managed, under the
control of an operator

Intended for all types of devices
as long as they are networked
 Mobile phones, Gateways,
PDAs, desktops, cars, and
enterprise servers
www.aQute.biz
OSGi Service Platform
The OSGi Service Platform
Operating System & Hardware
Java VM
Bundle
Bundle
OSGi
Framework
Management
Bundle
Bundle
Bundle
Bundle
Protocol Stack
www.aQute.biz
OSGi Service
OSGi Service Platform
Java & OSGi






More than a programming
language …
Standardized interfaces:
Multiple implementations
Access to tens of thousands of
software libraries
Application is: start - stop
Is this sufficient for networked
devices?
OSGi Specifications provide:
 An in-VM application model.
 A Service Registry for service
discovery
 A delivery format

Application
The Application
Application
Application
Application
Application
BlueApplication
Speech
XML
USB
tooth Application
Library
OSGi
OSGi
Web
OSGi
JTAPI
3D
Math
Server
The Application
OSGi
Java
Comm
Java
VM Security TCP/IP
Java
Mail
Ports
VM
VMLibraries
System Class
Java
Media
DistriJava
Imaging
VM SQL
Java
FW
buted
VM
Java
VM
VM
CryptoDirecOperating
System GUI
UPnP
OperatingSystem
System
graphy Operating
tories
Operating Java
System
Java
VM
VM
The OSGi fills a gap in Java
www.aQute.biz
Operating System
Operating System
OSGi Service Platform
UPnP & OSGi



Universal Plug aNd Play
A standard to let appliances
communicate
Functions
 Device/Service Discovery
standard: SSDP
 Remote Execution: SOAP
 Device Interface Descriptions:
WSDL

Allows for pre-defined, device
resident, and generated GUIs


Device
OSGi Based Device
www.aQute.biz
OSGi Service Platform
UPnP & OSGi
 Sounds awfully
similar to
OSGi???
 Confused?
www.aQute.biz
OSGi Service Platform
UPnP & OSGi

UPnP defines a communication
protocol

OSGi defines an execution
environment



OSGI
Device
Bundle/Application code
Service
OSGI
www.aQute.biz
OSGi Service Platform
UPnP & OSGi

The OSGi Service Platform is a
perfect execution environment
for UPnP enabled services!

The OSGi Alliance has
standardized a UPnP Service
that makes empowering a
device with UPnP very easy

The Service Platform could
become available as a
standardized UPnP Device in
the future

A marriage made in heaven!
www.aQute.biz
OSGI
OSGI
OSGi Service Platform
OSGi & .NET
 Is easier to program than C++
 Has robust automatic memory
management
 Provides a security model




Microsoft noticed the advantage
and "adopted" Java
However, they optimized their
implementation for Windows
This invalidated the "write once,
run everywhere" mantra
Obviously, SUN was not smiling
www.aQute.biz
>:(
:-)
;-)
:|
:-(
Java captured significant market
share in the 90s because Java:
:|
:)

OSGi Service Platform
OSGi & .NET
 Based on exactly the same
principles as Java
 Heavily optimized (and
compatible with Windows)


SUN extended Java with J2ME
and J2SE
Microsoft developed several
products for .NET and renamed
more products to .NET
.NET
:)

So SUN sued Microsoft
Microsoft kept Java at Version
1.1 (Still today)
The OSGi was founded to use
Java with networked services
Microsoft introduced .NET
;)
:)
:|

:(
:|


.NET
.NET
.NET
.NET
.NET
www.aQute.biz
.NET
OSGi Service Platform
OSGi & .NET
.NET Framework
'C++'
C#
'VB'
'J#'

But lacks
 Dynamic
 Pluggable Remote
Management
 Open specifications
 Optimizations for the myriad of
niche applications
...
www.aQute.biz
Libraries
Applications
ASP.NET
ADO.NET
Windows
Forms
Common Language Runtime
Windows XP Embedded
or 2000
XP
CE .NET
COM Legacy
 Provides all of the technical
advantages of Java, and more
 Has virtually the same
characteristics
 Comprehensive range of
products
Common Language Specification

OSGi Service Platform
So Why OSGi?

The non-proprietary nature of
Java is future proof




The OSGi service platform is
complementary to many existing
technologies
A well defined run-time environment for connecting devices
The OSGi Specifications a
unique remote deployment
model
Web Services level the playing
field with .NET
www.aQute.biz
;)
:)
 Multiple choices
 No party with market lock
 Large number of parties that
make variations on the theme
Questions
?