わたしの名はフレイ 作家・デザイナー見習い
神々とともに生きる詩人 一等星シリウスの導きを信じて

CORBA

CORBAとGNOMEで分散デスクトップ

CORBAとGNOMEを使うことで、分散環境でのネットワークシステムが可能となる。

たくさんのパソコンがあって、さまざまなプラットフォームがあって、それがインターネットで繋がれていたとして、その中でひとつの「統合デスクトップ環境」が、分散されたそれぞれのマシンをひとつにできる。

また、COMと同様の技術であるため、エンジニアの視点から見ると、全てのネットワーク環境で、コンポーネントの再利用とネットワークインターフェースを通じたメッセージのやり取りやオブジェクトのリンクが可能となる。

すなわち、ひとつのマシンにとらわれることなく、ネットワーク上の全てのマシンを総合的に操作することが可能となることを、GNOMEは目指している。

後日注記:CORBAにより、異なるプログラミング言語やネットワーク上のオブジェクト(モジュール)がインターフェースとその記述言語IDLを通じてコミュニケーションすることが可能となる。

GNOMEのネットワーク・オブジェクト・モデル

GNOMEはネットワーク・オブジェクト・モデルという考え方によって作られている。

ここには複数の意味がある。

1.ネットワーク通信によって、言語とプラットフォーム非依存なコンポーネント連携を行う。

2.X11のように、アプリケーションをリモートから操作し、さまざまなネットワーク上のアプリケーションが1つになって通信できる(ネットワーク上のオブジェクトが1つの連携したアプリケーションになる)。

3.GLibやCORBAなど、GNOMEコンポーネントはとてもオブジェクト指向的である。

GNOMEコンポーネントフレームワークは、コンポーネントを書くのを簡略化し、それらのオブジェクトがCORBAを話すので、Bonoboコンポーネントは、ネットワーク上の別のところにあるWindowsマシンで動いている別のCORBAコンポーネントと話すことが出来る。

  • ネットワーク通信
    • ネットワーク上で、WindowsLinuxなど、さまざまなCORBAアプリケーションが互いに「インターフェース定義」によって通信できる。
    • ライブラリやフレームワークのような「インターフェース」をネットワークを介して行うことができる。
  • 言語非依存・プラットフォーム非依存
    • たくさんの言語が使え、たくさんのOSで動く。
    • このことにより、多くのプラットフォームを混合させたシステム全体をアプリケーションにできる。
  • バイナリレベルでの再利用

ということが、CORBAの優位性である。