Starting With The OSGi Specifications By Peter Kriens, CEO aQute OSGi Fellow - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Starting With The OSGi Specifications By Peter Kriens, CEO aQute OSGi Fellow

Description:

Active in the car industry, industrial automation, entertainment, and ... Build a prototype. www.aQute.se - 2003 IIR Home nrg - 9. Train a group of developers ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 21
Provided by: peterk7
Category:

less

Transcript and Presenter's Notes

Title: Starting With The OSGi Specifications By Peter Kriens, CEO aQute OSGi Fellow


1
Starting With The OSGi SpecificationsByPeter
Kriens, CEO aQuteOSGi Fellow
www.aQute.se
2
Content
  • About the OSGi Alliance
  • Why? Where?
  • Pro/Con
  • Pilot Project
  • Development
  • Your OSGi Needs You!
  • Conclusion

3
About The OSGi Alliance
  • Established in 1999 to create a common model for
    networked services
  • Active in the car industry, industrial
    automation, entertainment, and of course home
    automation
  • Applicable for the coming generation of wired
    appliance that will require management

4
Why is OSGi needed?
  • Closed universe
  • Upgrades are in unity
  • Not necessary to interact with other devices
  • (Relatively) easy to manage
  • Can be proprietary
  • No Need For OSGi ...

Unconnected Dedicated Device
5
Why Is OSGi needed?
  • Needs to inter-work with future products
  • Increased functionality requires off the shelf
    components
  • Execute branded services
  • ...
  • Too much for a single development organization!

Firewire
Connected Open Device
802.11
MHP
Bluetooth
6
Products Based On OSGi
  • Easy to upgrade with new functionality
  • Easy to have a family of products
  • Save cost with standard components
  • Simplify development

7
Pro/Con
  • Con
  • Size Performance. Java requires a heavier
    processor and more RAM for the similar
    functionality.
  • Pro
  • Large Java Developer Society
  • Third party components
  • (Much) Wider market opportunities
  • Hedge your bets

8
Pilot Project
  • Find an applicable product that is (becoming)
    connected to other devices
  • Train a group of developers
  • Analyze the role OSGi can play for the product
  • Analyze the changes required for the device
  • Find standard components
  • Build a prototype

9
Train a group of developers
  • Training is paramount
  • Design is on the wrong side of development. We
    have to take decisions before we know the
    details.
  • The dynamic programming model of the OSGi
    specifications are somewhat "different"
  • Technical skills required are
  • Java on Embedded systems
  • OSGi service model
  • Domain knowledge

10
Analyze The Role OSGi Can Play
  • Candidate Areas
  • Network Application Protocols (HTTP,UPnP,JINI,NEWS
    )
  • "Intelligence"
  • Remote Management
  • User Interface
  • Caching
  • Database
  • Security

11
How To Handle Native Code
  • OSGi is Java based but supports native code very
    well
  • A bundle (an OSGi executable) can contain native
    code for different architectures
  • Suitable for
  • Legacy code
  • High Performance Code
  • Low level device control

12
What Changes Are Required?
  • It is usually better when the OSGi Framework is
    "in control"
  • Simplifies use of components
  • Better decomposition
  • Prevent the "mixed approach" trap"
  • OSGi can handle legacy code very well

13
Find Standard Components
  • Many OSGi member companies have developed
    off-the-shelf components
  • These are usually cheaper than building them
    in-house
  • Very good quality available
  • More functionality, more choice
  • Companies are, amongst others, IBM, Gatespace,
    ProSyst, Atinav, OpenSugar, SUN, Acunia, ...
  • Select preferred vendor, but work with others

14
OS And VM
  • Most embedded OS's support Java today
  • Linux, QNX, Win CE, Win XP embedded
  • Not all VMs are created equal
  • Memory consumption and performance can differ
    significantly between VMs
  • Select VM Profile
  • OSGi runs on CDC with Foundation Profile (SUN),
    jclGateway (IBM) or other profiles that implement
    the OSGi minimum execution requirement

15
Quantify
  • What Memory CPU is needed?
  • Java adds a significant overhead.
  • gt 100 MIPS
  • gt 8 Mbyte RAM
  • Overhead (space/time) OSGi is minimal
  • Note that extra space is needed for downloaded
    services (Include memory stick like the Ericsson
    P800)

16
Quantify
Added Value
Applications
Functionality
Applications
Functionality
Java
Java
Overhead
Overhead
Ratio lt 0
Ratio gt 0
17
Build a Prototype
  • Build a prototype, because you will build one
    anyway
  • Remember performance and size, always!
  • Budget memory performance
  • Stay vendor independent
  • At least do not become proprietary without a
    decision
  • Use component model for internal development
  • Reuse might be higher than you think

18
Your OSGi Needs You
  • Feedback experiences and service definitions into
    the OSGi
  • Why
  • Improve the quality by having many eyes look at
    it critically
  • Discover alternatives
  • If it becomes standardized, you have a head start
  • Altruism!

19
Conclusions
  • The OSGi/Java combination is going to be needed
    in a connected world
  • Java simplifies programming, but embedded devices
    will remain more complex than desktops
  • The component model can help making devices
    applicable in new markets
  • Third party development will be a requirement in
    the future

20
Questions ? Contact Peter.Kriens_at_aQute.se
Write a Comment
User Comments (0)
About PowerShow.com