25.09.2013 Aufrufe

Verteilte Objekte

Verteilte Objekte

Verteilte Objekte

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Verarbeitung mit verteilten <strong>Objekte</strong>n<br />

zum Beispiel einem objektorientierten Datenbankadapter für <strong>Objekte</strong> innerhalb einer Datenbank,<br />

angebunden werden. Der „Basic Object Adapter (BOA)“ definiert einen OA, der für konventionelle<br />

Objektimplementierungen verwendet werden kann. CORBA spezifiziert dabei die Implementierung<br />

der ORB/BOA Funktionalität nicht [RED96].<br />

CORBA verlangt zudem nicht, daß der ORB als eine einzige Komponente realisiert wird, was<br />

zum Beispiel beim Einsatz unter JAVA nicht möglich wäre. Statt dessen werden nur die<br />

Schnittstellen zum ORB definiert. Die von dem ORB angebotenen Operationen können damit in<br />

drei Gruppen unterteilt werden [RED96]:<br />

• Operationen, die für alle ORBs identisch sind (allgemeine Schnittstellen zum ORB, DII und<br />

DSI).<br />

• Operationen, die speziell für den Umgang bestimmter <strong>Objekte</strong> verwendet werden (Stubs und<br />

Skeletons).<br />

• Operationen, die für einen bestimmten Stil von Objektimplementierungen typisch sind (OA).<br />

Die entsprechenden Schnittstellen werden in Abb. 14 dargestellt.<br />

3.2.1.4 OMG-Interface Description Language (IDL)<br />

IDL stellt ein Mittel zur Beschreibung von Objektschnittstellen bereit. Diese Beschreibung erfolgt<br />

auf einem konzeptionellen Niveau, da keine der bekannten Programmiersprachen direkt die IDL-<br />

Definitionen umsetzen kann. Die in der IDL Syntax beschriebenen Schnittstellen müssen zunächst<br />

in äquivalente Konstrukte der betreffenden Programmiersprache übersetzt werden, so daß diese<br />

mit ihren Mitteln (Methodenaufrufe, Funktionsaufrufe, usw.) den Zugriff auf eine Schnittstelle<br />

realisieren und durchführen kann [MOV95].<br />

Die Vorschriften für die Zuordnung sind in sogenannten Language-Mappings festgelegt, die für<br />

jede Programmiersprache spezifisch sind. Für C, C++ und Smalltalk sind die Language-<br />

Mappings heute standardisiert. Für JAVA [OMG97], Ada, Fortran und Objective-C sind<br />

entsprechende Standards der OMG vorgeschlagen 9 .<br />

Die Realisierung der im Language-Mapping beschriebenen Schnittstellen ist vom ORB abhängig.<br />

Sie kann, neben den durch CORBA standardisierten, auch proprietäre Schnittstellen zum ORB-<br />

Kern bereitstellen. Dabei wird versucht, die Details der Implementierung dem Entwickler<br />

transparent zu gestalten [RED96].<br />

3.2.1.5 CORBA Services<br />

Die CORBA Services sind Dienste der Systemebene, die IDL-spezifizierte Schnittstellen anbieten.<br />

Sie bereichern und vervollständigen die Funktionalität des ORB und werden verwendet, um<br />

<strong>Objekte</strong> zu erstellen, zu benennen und in die CORBA Umgebung zu integrieren. Die OMG Object<br />

Services bestehen aus der „Common Object Service Spezifikation (COSS)“, einer Serie aus<br />

mehreren Bänden, die jeweils aus einem „Object Services Request for Proposal (RFP)“ bestehen<br />

[MOV95]. Insgesamt sind 16 Services im CORBA 2.0 Standard spezifiziert [ORF97]:<br />

RFP1 Services:<br />

• Object Event Notification Service:<br />

Dynamische (De-)Registrierung der Schnittstellen aufgrund von Ereignissen.<br />

• Object Lifecycle Service:<br />

Methoden, um <strong>Objekte</strong> auf dem Bus zu erstellen, kopieren, verschieben und zu löschen.<br />

• Object Naming Service:<br />

Erlaubt <strong>Objekte</strong> anhand ihres Namens zu finden. <strong>Objekte</strong> können beim Naming Service (~<br />

Namensdienst) angemeldet werden, so daß sie anhand ihres Namens lokalisiert werden<br />

können. Der Naming Service ermittelt die zu den <strong>Objekte</strong>n gehörigen Objektreferenzen.<br />

9 Die CORBA Spezifikation mit Language-Mappings ist unter http://www.omg.org/corba/cichpter.htm zu recherchieren.<br />

36

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!