260 likes | 349 Vues
O pen S ervices G ateway I nitiative. mit Malte Teubner. OSGi Mission. OSGI‘s primary goal is to define and foster rapid adoption of open specification for delivery of managed broadband services to networks in homes, cars and other environment. OSGi. Gegründet im März 1999
E N D
Open Services Gateway Initiative mit Malte Teubner
OSGi Mission OSGI‘s primary goal is to define and foster rapid adoption of open specification for delivery of managed broadband services to networks in homes, cars and other environment.
OSGi • Gegründet im März 1999 • Inzwischen über 80 mitarbeitende Firmen • Jährlicher Release der OSGi-API • Treffen der verschiedenen Gruppen
Weshalb • Allgegenwärtigkeit von Breitbandverbindungen und dem Internet • Neueste Services liefern, installieren und laufen lassen • Kompatibilität
Einsatz von OSGi • High-Value Services dynamisch über wide-area Netzwerke auf das Service Gateway laden. • z.B. Fahrzeug Diagnose, Navigation, Entertainment, etc.
Technische Umsetzung Experten Gruppen: • Core Platform EG • Vehicle EG • Device EG • Remote Management EG • Security EG • Architecture EG
Architektur Bundle OSGi Framework Java Runtime Environment Operating System Hardware
Bundle - Motivation • Als Hüllen-Objekt • Alle Services, Applikationen, etc. • Wird als Jar-Archiv zusammengefasst und verschickt • System Bundles • Management Bundles
Bundle - Inhalt • Java-Classes, html, help files, icons, etc. • Manifest-File • Informationen über Abhängigkeiten • BundleActivator
Das Bundle-Objekt • Installierte Bundles instantiieren zu einem Bundle-Objekt. Dieses Objekt besteht aus: • Bundle Identifier • Bundle Location • Bundle State
Bundle Identifier/Location • Identifier • Type long • Wird nie wieder benutzt, selbst bei Deinstallation • Wird nie geändert • getBundleId() • Location • String vom Installationsort • getLocation()
System Services (Bundles) • Package Admin Service • Permission Admin Service • Service Tracker • Log Service • http Service • Device Access • Configuration Admin Service • Preferences Service • User Admin Service
Package Admin Service • Package Sharing • Problem: Bundle Update oder Deinstallation • Bietet Policies für Package Sharing den Management Bundles an.
Permission Admin Service • Bietet den Management Bundles die Möglichkeit Permissions zu setzen. • z.B. FilePermission ExecutionPermission, etc.
Service Tracker • Bundles werden installiert, gestartet, gestoppt, geupdated und deinstalliert ohne Neustart. • Migration inerhalb des Frameworks. • Monitoring wichtig • Logged alle Service-Registrierungen, Modifikationen und Deinstallationen
Log Service • LogEntries zum Ablegen von Informationen • LogReader hollt Entries • LogListener wartet auf Entries und gibt sie sofort zurück
Http Service • Benutzung des Hypertext Transfer Protokoll • Html, XML, Servlets • Entfernt zugreifen auf das OSGi-Framework mittels Web-Browser
Device Access • Koordiniert automatisches finden und ankoppeln der Standard-Geräte • Erleichtert an- und abkoppeln von neuen Geräten • Ermöglicht Download und Install der Geräte-Treiber on Demand
Preferences Service • Daten über einen längeren Zeitraum speichern Boolean, Integer, Long, Float, Double, Byte Array • Key/Value Paare
User Admin Service Bundles benutzen den User Admin Service um User Authentisierung durchzuführen und die Autorisierung zu prüfen.
Mitglieder • BMW • Ericsson • Deutsche Telekom • Motorola • Nokia • Hewlett-Packard • IBM • Und viele mehr
Verbreitung • Mehrere Firmen haben begonnen Umsetzungen zu veröffentlichen • SUN, IBM, GateSpace
Zusammenfassung • Grosse Community • Akzeptanz • Lauffähige Umsetzungen