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

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

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

Kriterium:<br />

Anzahl umgesetzter Komponenten<br />

Damit stellt sich die Frage, auf welcher CORBA -Implementierung aufgesetzt<br />

wird. Dies spielt grundsätzlich zwar nur eine untergeordnete Rolle, da meist verschiedene,<br />

standardkonforme Implementierungen austauschbar sind, trotzdem gibt<br />

es kleine Unterschiede (z.B. bzgl. der Anzahl umgesetzter Dienste, Methoden- und<br />

Klassenaufbau, Aufrufparameter des ORB , etc.). So sollte ein Kriterium auch der<br />

gebotene Umfang an standardisierten Einzelkomponenten sein.<br />

Kriterium:<br />

Ein entscheidendes Kriterium im Rahmen dieser Arbeit ist die freie Verfügbar-<br />

Open Source keit des Codes im Sinne von „Open-Source“, da damit der komplette Quelltext zur<br />

Verfügung steht. Aufgrund dieser Festlegung kann bereits eine Auswahl getroffen<br />

werden, bei welcher die kommerziellen Produkte (z.B. ORBacus, VisiBroker,<br />

Orbix, etc.) ausscheiden. Die verbleibenden freien Produkte werden mittels nachfolgender,<br />

im Jahre 2001 vorliegender Tabelle 3.1 auf Seite 53 hinsichtlich der<br />

umgesetzten Zusatzdienste und Standardkonformität bewertet26 . Mit eingetragen<br />

sind die im Jahre 2004 erneut überprüften Vermerke27 , wodurch die Weiterentwicklungen<br />

sichtbar werden (eine komplette Übersicht befindet sich im Anhang C<br />

auf Seite 223).<br />

Kriterium:<br />

Die meisten Implementierungen unterstützen die Programmiersprachen C++<br />

Unterstütztung von C++ und Java. Da die OMG bei ihren Vorgaben in etwa die Strukturen von C++ als<br />

Grundlage nahm und so auch die Sprachabbildung ideal umgesetzt ist, bietet sich<br />

der Einsatz von C++ an (vgl. Abschnitt 3.2.3 auf Seite 49). Bei heute gängigen<br />

C/C++-Compilern handelt es sich um sehr hoch entwickelte und gut funktionierende<br />

Werkzeuge. Im Hinblick auf Umfang und benötigte Funktionalität sind insbesondere<br />

MICO Is CORBA (MICO) und ACE /TAO zu nennen, welche in den<br />

höheren Versionen als am besten geeignet erscheinen.<br />

MICO: Minimalistischer Imple- MICO stand ursprünglich für „Mini CORBA“. Es wurde federführend von<br />

mentierungsansatz Kay Römer und Arno Puder entwickelt, um eine Grundlage für ein praxisnahes<br />

Lehrbuch zum Thema Middleware für verteilte Systeme zu schaffen. Durch die<br />

Open-Source-Mitarbeit entstand aus dem minimalistischen Ansatz eine komplette<br />

CORBA -Implementierung, so dass als Akronym MICO Is CORBA (MICO ) gewählt<br />

wurde28 . Es handelt sich aber immer noch um einen kompakt gehaltenen<br />

Lösungsansatz, welcher sich komplett an den Standard hält und deshalb auch als<br />

Beispielimplementierung von der OMG anerkannt wird. MICO basiert auf allgemeinen<br />

Bibliotheken in C++. Das klare Design setzt nur wirklich für CORBA benötigte<br />

Elemente um und ist ideal für erste, experimentelle Applikationen geeignet.<br />

Die Quellen selbst sind frei verfügbar und unterstützen diverse Plattformen (z.B.<br />

Sun Solaris, IBM, AIX, HP-UX, Linux, Digital Unix, Ultrix, Windows NT und<br />

Pocket PC-Systeme) 29 .<br />

TAO: Implementierung zur Lösung<br />

von Optimierungsproblemen<br />

TAO hingegen steht für „The ACE Object Request Broker“. Die ersten Entwicklungen<br />

dazu entstanden infolge der Erstellung einer Dissertation im Zusammenhang<br />

mit dem Design und der Performanzoptimierung für parallel arbeitende<br />

Protokollstacks, wozu eine Umgebung mit Namen ACE geschaffen wurde. Mit dieser<br />

löste Douglas C. Shmidt zwei Anfang der 90er Jahre existierende Problematiken:<br />

26 vgl. dazu [PUDPRO01]<br />

27 vgl. dazu [PUDPRO04]<br />

28 vgl. [ROEM01]<br />

29 vgl. [WEB602]

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!