24.08.2013 Aufrufe

Download - FESG - Technische Universität München

Download - FESG - Technische Universität München

Download - FESG - Technische Universität München

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.

48 KAPITEL 3: MIDDLEWARE ALS ELEMENTARE KOMMUNIKATIONSBASIS<br />

Abbildung 3.4: CORBA-Architektur<br />

Interface Definition Language<br />

(Client- und Server-Stubs (Skeletons)) verwalten. Die Schnittstellen werden sprachunabhängig<br />

in einer eigenen Interface Definition Language (IDL ) deklariert und<br />

mittels eines speziellen IDL -Compilers in den Zielcode übersetzt. Zum Kontaktieren<br />

eines entfernten Objekts werden verallgemeinerte IOR genutzt, welche aus<br />

Performanzgründen meist statisch Verwendung finden, aber z.B. für das Dynamic<br />

Invocation Interface (DII) auch dynamisch über den Namens-<br />

Aufrufsemantik „at-most-once“ dienst abgerufen werden können. Die Aufrufsemantik für entfernte Methoden ist<br />

und „maybe“ „at-most-once“ (RPC ) oder „maybe“ (RPC ohne Antwort) (vgl. zu Aufrufsemantik<br />

Abschnitt 3.2.1 auf Seite 40). Auf Seite des Servers verbindet ein transparenter<br />

Portable Object Adapter (POA) den ORB mit der Methodenrealisierung.<br />

Sprachunabhängigkeit<br />

Die Umsetzung ist sprachunabhängig und findet durch Übersetzung des Codes<br />

auf dem Zielsystem statt, indem eine Implementierung der CORBA -Spezifikation<br />

von einem beliebigen Hersteller individuell hinzu gebunden wird. Die definierte<br />

„InterORBability“ (Interoperable ORB s) sorgt dabei dafür, dass verschiedene<br />

Implementierungen, die sich an den Standard halten, miteinander kombinierbar<br />

sind. Die Kommunikation findet über ein eigens Protokoll, das Internet Inter-ORB<br />

Protocol (IIOP) , statt.<br />

Die Schnittstellendefinition mit IDL<br />

Schnittstellen zwischen Client und Server werden in CORBA über die sog. Interface<br />

Definition Language (IDL ) definiert22 Innerer Aufbau eines Interfaces<br />

. Dabei handelt es sich um eine abstrakte<br />

Sprache, mit welcher der Aufbau, nicht aber die Realisierung eines Interface festgelegt<br />

wird. Diese Definition kann mittels standardisierter IDL -Sprachanbindungen<br />

(momentan für C, C++, Java, Smalltalk, Ada und Cobol) auf nahezu jede beliebige<br />

Sprache abgebildet werden, sofern diese die Grundprinzipien z.B. der IDL -<br />

Sprachanbindung und Abbildung Datentypen unterstützt. Ein IDL -Compiler übersetzt aufgrund der Anbindungsdedurch<br />

IDL-Compiler finition eine Schnittstellenbeschreibung in zwei Stellvertreter-Objekte: den Client-<br />

22 vgl. für folgende Ausführungen [PUD01] a.a.O. S. 42 f. und [SELL00] a.a.o. S. 76 ff.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!