Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

OSGi

Un article de Wikipédia, l'encyclopédie libre.
OSGi Service Platform

Description de l'image Osgi-system-layering.svg.
Informations
Développé parOSGi Alliance
Première version[1],[2]Voir et modifier les données sur Wikidata
Dernière version8 ()
Écrit enJavaVoir et modifier les données sur Wikidata
EnvironnementMachine virtuelle JavaVoir et modifier les données sur Wikidata
TypeFramework
Organisme de normalisation
Eclipse Foundation project(d)Voir et modifier les données sur Wikidata
LicenceOSGi Specification License, Version 2.0
Site webwww.osgi.org

modifier -modifier le code -voir Wikidata(aide)

L’OSGi Alliance (précédemment connue en tant qu'OpenServicesGatewayinitiative) est une organisation qui spécifie une plate-forme de services fondée sur le langageJava qui peut être gérée de manière distante. Le cœur de cette spécification est unframework (canevas) qui définit un modèle de gestion de cycle de vie d’une application, un répertoire (registry) de services, unenvironnement d'exécution et des modules. Fondés sur ce framework, un grand nombre de couches (layers) OSGI, d’API et de services ont été définis :

  • Journalisation (log ou Data logging = enregistrement chronologique des données) ;
  • Gestion des configurations (configuration management), des préférences ;
  • Le serviceHTTP (en exécutant desservlets) ;
  • L’analyse syntaxiqueXML ;
  • L’accès aux dispositifs (Device Access) ;
  • L’administration de paquetage (Package Admin) ;
  • L’administration des permissions (Permission Admin) ;
  • Le niveau de démarrage (Start Level) ;
  • La gestion des utilisateurs (User Admin) ;
  • Le connecteur d'ES (IO Connector; IO = Input Output = Entrées Sorties) ;
  • La gestion des connexions (Wire Admin) ;
  • Jini, l’exportateurUPnP (UPnP Exporter) ;
  • Le pistage applicatif (Application Tracking) ;
  • Les paquets signés (Signed Bundles) ;
  • Les services déclaratifs (Declarative Services) ;
  • La gestion de l’énergie (Power Management) ;
  • La gestion des dispositifs (Device Management) ;
  • Les politiques de sécurité (Security Policies) ;
  • Diagnostic/contrôle et organisation en couches du cadriciel (Diagnostic/Monitoring and Framework Layering).

Étendue du framework OSGi

[modifier |modifier le code]

Le framework implémente un modèle de composants dynamique et complet, comblant un manque dans les environnements Java/VM traditionnels. Les applications et composants (se trouvant sous la forme debundles pour le déploiement) peuvent être installés, arrêtés, démarrés, mis à jour et désinstallés de manière distante sans nécessiter de redémarrage ; la gestion des classes/paquetages Java est spécifiée de manière très détaillée. La gestion du cycle de vie est effectuée à travers une API en appliquant une politique de gestion des téléchargements distants. Le répertoire (registry) de services permet aux bundles de détecter l’addition de nouveaux services, ou la suppression de services et de s'y adapter.

Description graphique de l’architecture
Description graphique de l’architecture

L'objectif original se focalisait sur les passerelles (gateways) de services mais sa mise en application s’est avérée bien plus étendue. Les spécifications sont désormais utilisées dans des applications allant des téléphones portables à l’IDEEclipse (sous-projet Equinox). D’autres domaines d'application incluent les automobiles, l’automatisme industriel, lesPDAs, le calcul grid, les loisirs (e.g. iPronto), la gestion de flottes et lesserveurs d'applications.

Processus de spécification

[modifier |modifier le code]

La spécification OSGI est développée par les membres du consortium au travers d’un processus ouvert et rendu disponible gratuitement sous la OSGi Spécification Licence. L’alliance OSGI possède un programme de conformité qui est ouvert aux membres seulement. À la date d', la liste des implémentations certifiées se résume à six entrées.

Organisation

[modifier |modifier le code]

L’OSGi Alliance a été fondée parEricsson,IBM,Oracle,Sun Microsystems et d’autres en.

On trouve parmi ses membres à la date de mai 2007 plus de 35 compagnies comme IONA Technologies, Ericsson, Deutsche Telekom, IBM, Makewave (anciennement Gatespace Telematics), Motorola, Nokia, NTT, Oracle, ProSyst,Red Hat,Samsung Electronics, Siemens, et Telefonica.

L’alliance possède un bureau de directeurs qui fournit une gouvernance globale de l'organisation. Les OSGi officers ont des rôles et des responsabilités variés dans ce cadre. Les travaux techniques sont conduits au sein de l’Expert Groups et ont pour objectifs de développer les spécifications, d’établir des implémentations de référence et de produire des tests de validation et de conformité. Ces Expert Groups, travaillant de concert, ont produit quatre versions majeures à la date de 2007. Les travaux non-techniques sont conduits par divers groupes et comités.

Il existe des groupes d’experts dédiés pour l’entreprise, le mobile, les véhicules et lescore platforms. L’Enterprise Expert Group (EEG) est le plus récent EG et s'adresse aux applications entreprise/côté serveur.

Composition du bureau (Board of Directors) en Mars 2008

[modifier |modifier le code]
  • Dan Bandera (IBM)
  • John R. Barr, Ph.D (Motorola)
  • Edward Cobb (BEA)
  • Anish Karmarkar (Oracle)
  • Ryutaro Kawamura, Ph.D (NTT)
  • Seok-Ha Koh (Samsung)
  • Kimmo Löytänä (Nokia)
  • Frank Mittag (SAP)
  • Stan Moyer (Telcordia)
  • Eric Newcomer (IONA)
  • Susan Schwarze, Dr. (ProSyst)

Versions de spécification

[modifier |modifier le code]
  • OSGi Release 1 (R1):
  • OSGi Release 2 (R2):
  • OSGi Release 3 (R3):
  • OSGi Release 4 (R4): /
    • Core Specification (R4 Core) :
    • Mobile Specification (R4 Mobile / JSR-232) :
  • OSGi Release 4.1 (R4.1): (AKA JSR-291)
  • OSGi Release 4.2 (R4.2): (AKA JSR-294)

Nouveautés dans la Release 4 d’OSGI

[modifier |modifier le code]
  • Nouvelles capacités très puissantes de modularisation améliorant grandement les services réseaux qui partagent une même et seule VM.
  • Classe modularisée partageant et cachant les détails d’implémentation.
  • Gestion avancée des multiples versions de la même classe si bien que d’anciennes et nouvelles applications peuvent partager la même VM.
  • Localisation des manifestes de bundle OSGI permettant le déploiement des services n’importe où.
  • Amélioration de la politique de sécurité.
  • Une spécification déclarative des services qui résout les problématiques d'empreinte mémoire pour permettre aux dispositifs embarqués d'utiliser un service orienté architecture pour leurs applicatifs.

Frameworks OSGi

[modifier |modifier le code]

L’implémentation de référence de l’OSGi Alliance n’est pas conçue pour un contexte de production, mais sert de référence pour d'autres implémentations.

Les frameworks “production-ready” sont proposés par divers éditeurs, aussi bienOpen Source que commerciaux. Les deux approches ont des avantages et des inconvénients.

Les frameworks commerciaux OSGi

[modifier |modifier le code]

Les frameworks commerciaux sont et doivent être certifiés, et ciblent des applications plus pointues nécessitant des optimisations. Ils permettent également de prendre en compte des besoins spécifiques des clients par l’ajout de modules correspondant à leurs besoins, ou des implémentations correspondant à leurarchitecture matérielle (par exemple dans le domaine des appareils mobiles, les architectures sont très variées). Tout cela a évidemment un coût, et lie les clients avec leur fournisseur. Mais ceci est contrebalancé par le fait que la spécification est libre, et que des implémentations open source existent, permettant éventuellement à un coût raisonnable de changer de fournisseur.

Les frameworks OSGi Open Source

[modifier |modifier le code]

Les frameworks sont généralement moins ciblés dans le type d’application envisagé - ou au contraire focalisent sur un domaine bien spécifique comme Eclipse/Equinox ou/et sont dominés par une seule entreprise, qui a découplé son framework d'un produit commercial existant, ou qui a conçu le cadriciel au départ comme un produit commercial devenu Open Source. L’important est tout de même la visibilité du code rendue par la mise en Open Source de ce code.

Liste des cadriciels OSGi Open source

[modifier |modifier le code]
  • Equinox (OSGi-Framework) – du projetEclipse (Enterprise)
  • mBedded Server Equinox Edition – fondé sur le framework Equinox d’Eclipse ci-dessus
  • Oscar – originellement un projet universitaire, puis développé sous le nom de projet Apache Felix ci-dessous
  • Apache Felix – projet de la communauté Apache
  • Knopflerfish – originellement commercialisé comme un produit embarqué deGatespace
  • Concierge – Implémentation très légère pour les mobiles et les systèmes embarqués
  • Jadabs – implémentation rudimentaire selon l'expression : “A dynamic lightweight container for small devices in a distributed environment”

Guides et échanges d'information

[modifier |modifier le code]

OSGi dans le cadre du processus JCP

[modifier |modifier le code]

OSGi est inscrit en tant queJSR 291: Dynamic Component Support for Java SE dans le cadre du processus Communautaire Java (JCP) comme le modèle de composant dynamique officiel pour les développements java – à côté de la "JSR 232: Mobile Operational Management", qui traite des problématiques des mobiles traités par JME. La JSR-232 correspond à la spécification Mobile R4 (MEG) et la JSR-291 correspondant à OSGi R4.1.

Liste des JSR associées

[modifier |modifier le code]
  • RFC-2608 (Service Location Protocol)
  • SunJINI (Java Intelligent Network Infrastructure)
  • Sun JCPJSR-8 (Open Services Gateway Specification)
  • Sun JCPJSR-232 (Mobile Operational Management)
  • Sun JCPJSR-246 (Device Management API)
  • Sun JCPJSR-249 (Mobile Service Architecture for CDC)
  • Sun JCPJSR-277 (Java Module System)
  • Sun JCPJSR-291 (Dynamic Component Support forJava SE - AKA OSGi 4.1)
  • Sun JCPJSR-294 (Improved Modularity Support in the Java Programming Language)

Standards technologiques associés

[modifier |modifier le code]

Exemples de projets utilisant OSGi

[modifier |modifier le code]

Livres

[modifier |modifier le code]

Notes et références

[modifier |modifier le code]
  1. « OSGi Specifications »
  2. « OSGi Service Gateway Specification Release 1.0 »
  3. (en) « Jitsi », Aosabook.

Voir aussi

[modifier |modifier le code]

Liens externes

[modifier |modifier le code]
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=OSGi&oldid=220386523 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp