next up previous contents index
Next: Kommunikationsmodell Up: Object Management Architecture Previous: Organisationsmodell

Informationsmodell

 

CORBA bietet neben den Vorteilen objektorientierter Programmiersysteme (z.B. Kapselung, Datenabstraktion, Vererbung, Polymorphie) per Definition die Möglichkeit, verteilte (Management-) Anwendungen so zu implementieren, daß deren einzelne Module interagieren können, ohne die Spezifika der darunterliegenden Kommunikations- bzw. Systemarchitekturen beachten zu müssen, da die Modulschnittstellen in einer einheitlichen Schnittstellen-Beschreibungssprache ( Interface Definition Language, IDL)  offengelegt sind. Die in Abschnitt [*] angesprochenen acht Ausprägungsformen von Verteilungstransparenz werden durch CORBA nahezu vollständig erfüllt: Lediglich die Bedingung der Migrationstransparenz umfaßt Festlegungen, die über den Umfang von CORBA hinausgehen (z.B. an die Programmiersprache und evtl. vorhandene virtuelle Maschinen) und kann folglich nur dann von CORBA erfüllt werden, wenn diese zusätzlich bereitgestellt werden. Dies liegt jedoch außerhalb des Umfangs der Festlegungen zu CORBA. Wir werden diesen Punkt in Kapitel [*] eingehender behandeln. An dieser Stelle sei daher lediglich darauf hingewiesen, daß die Beschreibung der Modulschnittstellen in IDL nicht die Portabilität der Module impliziert, da diese in der Regel die besonderen Eigenschaften einer spezifischen Systemplattform nutzen und daher nicht ohne weiteres auf ein anderes Zielsystem migriert werden können.

Die kleinste Einheit der Verteilung bei CORBA ist ein einzelnes Objekt; durch das Fehlen des aus dem OSI-Management bekannten Package-Konzeptes entfällt die Möglichkeit, die Ausgestaltung eines Objekts (und damit sein Verhalten) bei seiner Instantiierung von der Erfüllung frei definierbarer Bedingungen abhängig zu machen. Eine Konsequenz davon ist, daß sämtliche Instanzen einer Objektklasse identisches Verhalten aufweisen und kein late binding möglich ist. Instanzen derselben Objektklasse werden anhand ihrer abweichenden Objektreferenzen unterschieden; umgekehrt ist es durchaus möglich, daß eine Instanz mehrere Objektreferenzen besitzt. Letzteres verdeutlicht, daß Objektreferenzen keine interne Struktur besitzen und daher nichts über die Anordnung des Objekts in Bezug zu anderen Objekten aussagen (Enthaltensein, Registrierung usw.).

Das CORBA-Analogon zu Managementoperationen besteht im Aufruf einer Methode eines anderen Objekts. Ferner werden Objekte über ihre Schnittstelle und nicht ihren Namen angesprochen. Diese Schnittstellen werden, wie bereits oben erwähnt wurde, in einer programmiersprachenunabhängigen Notation, der sogenannten OMG Interface Definition Language, (OMG IDL)[*] beschrieben. Hierdurch wird sichergestellt, daß sämtliche Objekte eines CORBA-Systems auf einheitliche Art angesprochen werden können, ohne beachten zu müssen, auf welcher Systemarchitektur und unter welchem Betriebssystem diese laufen. Die Frage, in welcher Programmiersprache Managementobjekte implementiert sind, ist für die Kommunikation zwischen diesen ebenfalls irrelevant.

Hinsichtlich der Definition der von einem Objekt ausgesandten asynchronen Ereignismeldungen ergeben sich im Vergleich zu OSI weitere Unterschiede: In CORBA sind von einem Objekt ausgehende asynchrone Ereignismeldungen nicht Bestandteil der Objektdefinition, da hier Ereignisse wie ,,Operationen in umgekehrter Richtung`` ablaufen, d.h. als Methodenaufruf am Empfängerobjekt sichtbar sind. Asynchrone Ereignismeldungen werden somit an der Schnittstelle des empfangenden Objekts durch eine dort definierte Methode entgegengenommen.


next up previous contents index
Next: Kommunikationsmodell Up: Object Management Architecture Previous: Organisationsmodell
Copyright Munich Network Management Team