OSGi
OSGi is a hardware-independent, dynamic software platform that simplifies the process of modularizing distributed applications and their services, and managing them throughout their entire life cycle (Wütherich et al. 2008). The OSGi platform requires a Java Virtual Machine (JVM) and provides a framework on the basis of the JVM. The OSGi alliance (Open Service Gateway initiative) is an industry consortium consisting of a number of manufacturers from different sectors, which originally developed the platform for use in embedded systems. The most important features of OSGi are as follows:
OSGi architecture: OSGi defines the following layers as its base architecture:
Execution environment
Module
Life cycle
Services
Security
Applications
Component model: The fundamental component model consists of a bundle. In OSGi, bundles are also referred to as services, which are managed in a service registry. However, the concept of a service in OSGi has nothing in common with the concept of a service...