What is OSGi?

A worldwide technology standard

OSGi, The Module System for Java, is a cross-industry standard defined by the OSGi Alliance. The OSGi Alliance is a worldwide consortium of 40+ technology innovators that advances a proven and mature process to assure interoperability of applications and services based on its component integration platform.

The OSGi Specification describes a modular service and component platform designed for the Java programming language. The specification defines the core framework, generic middleware services and numerous added value services for specific vertical markets (e.g. Mobile, Automotive, Residential, Enterprise).

ProSyst provides a clean-room implementation of the OSGi Specification, optimized for embedded devices and available on essentially all embedded operating sytems and Java VMs.

OSGi Adoption

The OSGi technology is adopted in countless products and projects in various vertical markets. The most dominant fields of use are:

The number of deployments is continuously growing and so is the community and the base of OSGi tools and components.

OSGi Technology

A short and comprehensive introduction to the OSGi technology is provided by the OSGi Alliance here. This introduction discusses the core concepts of OSGi including the layer model, modules, services and the dynamic deployment.

The small footprint of OSGi makes it perfectly suitable for embedded devices. The following picture illustrates the OSGi technology for the embedded context:

ProSst mBedded Server OSGi

Apparently, the OSGi framework is a container for components, called Bundles in OSGi terminology. Each Bundle has its own life-cycle which means it can be plugged into the framework at any point in time, it can be started, stopped, updated or removed individually. Bundles can carry Java code, native code or other resources (e.g. language resources, pictures, etc.).

Apart from managing Bundle life-cycles, the OSGi framework enables interaction between bundles. By means of a sophisticated package and version meta data system, OSGi enables Bundles to securely share APIs (Java packages) among each other. Secondly, Bundles can interact at runtime by providing or consuming Services, which are Java Interfaces registered with and found by the Service Registry. The concept of Services turns OSGi into a local SOA (Service Oriented Architecture) inside the virtual machine. Security and integrity of the OSGi platform is granted by a sophisticated security infrastructure that is inherently integrated into OSGi.

In addition to these generic OSGi features, the specification defines a large selection of value adding APIs and Services. A summary you find here.

ProSyst footprint in OSGi

ProSyst is a longstanding key member of the OSGi Board of Directors and maintains several Chair positions in the OSGi Expert Groups, incl. Residential EG and Vehicle EG.

ProSyst is one of the most active OSGi members since its foundation in 1999 and has helped to drive the OSGi specs R1-R4.

In terms of OSGi products, ProSyst´s OSGi implementation is probably the most established one in the embedded space – since the year 2000 it is used in CPEs, Routers, Modems, Gateways, Control Panals, Phones, Cars, Trains, Trucks, Healthcare Devices, etc. Over 4,000,000 licenses of our commercial OSGi framework have been sold in the last 18 months.

ProSyst´s OSGi is a cleanroom implementation optimzed for embedded devices, so it is faster, smaller, more reliable and optimzed for various embedded platforms.

ProSyst not only offers its OSGi implementation but also the neccessary SDKs and tools to write OSGi apps and services as well as the remote management system to provision those components and manage the software life-cycle of the embedded device. With 120+ inhouse OSGi experts, ProSyst is able to provide all kinds of professional services you need to make your OSGi project a success.

ProSyst End-to-End Portfolio

 

 

Click here to learn more about the benefits provided by OSGi.