Représentation de Open Service Gateway Initiative
Les caractéristiques du OSGI
La spécification du OSGI
La spécification OSGI définit une plate forme commune et standard, permettant à une diversité de services logiciels d'être chargés et exécutés.
Un des objectifs de OSGI est de profiter des capacités d'indépendance de plate-forme et de chargement de code dynamique du langage Java pour faciliter le développement et le déploiement dynamique des applications pour des systèmes embarqués.
L’Organisation OSGI ne fournit pas un logiciel fini pour l'installation, mais une infrastructure qui s'ouvre efficacement à l'industrie pour développer les environnements réseaux et les services. Les logiciels présents sur la plate-forme sont tous écrits en Java, cela permet d'être plus « portables ».
La plate forme de service
Cette plate-forme de service est un serveur d’application basé sur Java, travaillant sur la machine virtuelle de java.
OSGI permet également l’administration de cycle de vie d'un logiciel existant sur cette plate-forme, depuis n'importe où dans le réseau local ou distant. La plate-forme déploie dynamiquement des applications sans arrêter la passerelle. Cela signifie que les applications sont installées sur un format standardisé. Ils peuvent par la suite demander d'être démarrer, mis à jour, arrêter ou désinstaller sans que le JVM ait besoin de démarrer.
Domaine d’application
La plate-forme peut être installée dans un passerelle de service telle qu'un « set-top box » comme le FreeBox ou le LiveBox. Elle peut également être installée dans un modem ou une passerelle résidentielle dédiée, comme un système d’alarme par exemple.
Domaine de deploiement
Le domaine de déploiement du OSGI est très vaste, et couvre de multiples sections.
A la base, OSGI était prévu pour le réseau local d'un foyer, permettant d'englober les applications automatisées. Mais le OSGI a eu un tel succès que d'autres domaines s’y sont intéressés.
Nous trouvons Nokia et Motorola qui mènent une technologie basée sur le standard OSGI pour les téléphones « smart phone ».
De même, l'industrie automobile a adopté les spécifications dans la partie essentielle de la spécification Global System for Telematics GST qui est utilisée par la plupart des fabricants de voitures. GST est un projet fondé par les EU. Il permet de créer une architecture standardisée et ouverte pour des services automotives.
Dans le cas d'Eclipse, la spécification OSGI a aidé à résoudre le problème de mise à jour des plugins de manière dynamique. Eclipse Equinox 3.0 utilise OGSi pour le chargement/déchargement des plugins.
Il est clair que les spécifications OSGI ont été adoptées de manière très large. La raison principale vient de fait que OSGI est une couche permettant à des multiples composants de coopérer dans une seule machine virtuelle java, JVM.
Cette technologie a besoin d'être une plate-forme indépendante afin de pouvoir être implémentée sur une variété de matériels informatiques ou des matériels électroniques, des produits maison.
Il est important que cette technologie soit un standard afin de permettre aux constructeurs de travailler et aux fournisseurs de service d'être compatible. Dans ce cas de figure, il est possible pour un service fourni par un fournisseur, d'utiliser une autre marque du dispositif.

Voici une vue globale du principe de fonctionnement d'OSGI
Les avantages
Un grand avantage du OSGI est son modèle puissant permettant l'existence de différents composant ou applications dans une seule JVM. L'exécution des multiples applications dans un même JVM réduit le footprint (quantité de ressource utilisée par une application), augmentant ainsi les performances.
De même, le OSGI est un coopérateur où des applications peuvent dynamiquement découvrir et utiliser des services fournis par d’autres applications tournant dans la même plate-forme de service OSGI.
Etape de teste
Aujourd’hui le OSGI est en phase de test un peu partout dans le monde. Un des tests le plus avancé se fait à Barcelone. La maison « eNeo Labs Connected Home » est équipée de la technologie OSGI, intégrée dans une demeure familiale. Presque tout est interconnecté et automatisé dans la maison : en débutant par les volets, les douches, l’aspirateur central, les caméras de surveillance, et en finissant par la piscine.
La technologie est composée d’un portail résidentiel connecté à Internet. Il dispose également d’un intergiciel et d’une série de services de pointe.
Dans la maison, les membres de la famille peuvent facilement lancer des scénarios préprogrammés pour des activités comme « se lever », « quitter la maison », « partir en vacances » ou « regarder un film ». Le choix d’un scénario déclenche des processus prédéfinis impliquant des appareils différents de plusieurs fabricants.