next up previous contents
: OX Message の 表現方法 : Open XM の設計と実装: クライアントサーバモデルと数学共通表現 : CMO の形式的表現方法   目次

OpenXM の通信モデル

われわれは, 数学プロセスがメッセージを 交換しながら計算が進行していくというモデルを想定して設計をすすめている. 各プロセスはスタックマシンであり, これを OX スタックマシンとよぶ. 数学プロセスの間の通信路の確保の仕方としては以下のように いろいろな実現方法を想定している.

  1. ファイルを介して通信する.
  2. Library として直接リンクして通信する.
  3. TCP/IP ソケットの利用.
  4. Remote Procedure call の利用.
  5. JAVA RMI.
  6. マルチスレッドの利用.
  7. PVM ライブラリの利用.
  8. MPI ライブラリの利用.

通信とはプロセス間のメッセージのやりとりである. メッセージは論理的に次のような構造をもつ:

destination origin
extension ox message_tag message_body

このメッセージを, OX message (OpenXM message object) とよぶ. OX Message はトップレベルのメッセージ object であり, 仕様書では, さまざまなグループに属する object が登場する. グループ名は, たとえば, OX Message/TCPIP/Primitive などと書く. message_body の部分の仕様は, OX Message の上位に位置する部分であり, SMobject または CMObject がくる. これらの object はタグをもち, そのタグ定数は SM_ または CMO_ ではじまる. SMobject は, スタックマシンコマンドメッセージ object であり, やはり, グループ分けされている. 各グループ名は, SMobject/Primitive, SMobject/Basic などと書く. SMobject の構造は サーバスタックマシンの節で詳しく説明する. CMObject についてはすでに Primitive の CMObject の説明をしたが, あとで CMObject レベル 1の説明をする. OX Message の ox message_tag の定数は OX_ で始まる.





Nobuki Takayama 平成17年2月10日