OSGi Concepts
Main Page · Course Description · Course Topics · Schedule, Students, Teams · Course Resources · Course Projects
The OSGi Alliance - Open Services Gateway initiative - is an open standards organization founded in March 1999 that originally specified and continues to maintain the OSGi standard. OSGi technology seems to be remarkably difficult to those unfamiliar with it.
Definitions:
OSGi enables the development of applications from components that could be:
- reusable
- dynamically composed
- hide their implementation
- communicate their dependencies and services
- 2. Bundle is the name for a component in the OSGi Architecture.
- 2. Bundle is the name for a component in the OSGi Architecture.
(generic bundle definition - a group of things fastened together for convenient handling[3] )
OSGi Framework The following list contains a short definition of the terms:
- Bundles - Bundles are the OSGi components made by the developers.
- Services - The services layer connects bundles in a dynamic way by offering a publish-find-bind model for plain old Java objects.
- Life-Cycle - The API to install, start, stop, update, and uninstall bundles.
- Modules - The layer that defines how a bundle can import and export code.
- Security - The layer that handles the security aspects.
- Execution Environments - Defines what methods and classes are available in a specific platform.
The core component of the OSGi Specifications is the OSGi Framework. The Framework provides a standardized environment to applications with the layers described above. The most used implementations of OSGi Specifications are Knopflerfish and Equinox. Regardless of the particular implementation, the interactions between layers take place as depicted in the below picture.