KONOE
はじめに
最近の計算機技術の発展の中で、特に計算機のダウンサイジング、
ネットワーク技術の進歩には目をみはるものがあります。また、ソフトウエア
においてもC++やJavaなど、オブジェクト指向技術の定着が感じられます。これらの
技術は、低いコストで高い性能のシステムを導入することを可能にしてくれます。
高エネルギー物理学においてこういった技術が最も必要とされる分野に
オンラインデータ収集業務(DAQ)があります。これまで、DAQシステムは
その性能を確保するために、実験毎に専用のシステムを構築する必要が
ありました。
このような状況で問題になるのはソフトウエア開発です。自分で開発するのは
もちろん大変ですが、他の計算機で動いているソフトウエアを自分の計算機に
移植するだけでも結構な知識と労力が必要でした。
KONOEプロジェクトは高エネルギー分野で用いられるDAQソフトウエアを組み
上げるためのツールやライブラリの開発を行なうものです。
KONOEの目的
データ収集から解析にいたるオンラインソフトウエアツールキットをC++と
Javaにより構築します。
ビームテストやサイトでのテストベンチのような小規模で短寿命のソフトウエアを
効率よく生産するためのクラスライブラリとユーザ環境を提供することを目的
とします。
実用的なシステムとするため、次のような点に重点をおくことを考えています。
- 実用的な処理性能を持つこと。
- ユーザが簡単に操作を理解できること。
そのためにC++とJavaという異なった言語処理系を必要とします。
機種依存の部分あるいは性能の確保が重要な部分はC++により最適化をはかり、
マンマシンインターフェース部分など機種に依存する必要のない部分、
もしくは処理速度などがクリティカルでない部分はJavaアプレットもしくは
Javaアプリケーションとして実装
し、それらの間はサーバ・クライアントスキームにより接続することに
します。これらによって
- ネットワーク分散環境での実行が可能であること。
- プラットフォームに依存しないシステムであること。
などが実現します。オブジェクト指向技術を用いたネットワーク分散環境での
オンラインデータ収集機能や部品の集積をめざし、
K toolKit for
O Object Oriented,
N Network Distributed
O Online
E Environment
の略称をもってプロジェクト名および産物名konoeを名乗っています。
KONOEの構成
KONOEはいくつものプログラムと、それらのソースコード、それらを作り
かえるのに必要なライブラリなどから構成されます。そのために、次のような
階層を用意します。
- ネットワークプロセス階層
- コマンドメッセージング階層
- データフロー階層
- パラメータデータベース階層
これらの階層はそれぞれに対応するクラスライブラリとして実現されます。
これらの「階層」を横糸としてたくさんのプロセスが縦糸の役割を
してシステム全体を織り上げていきます。プロセスにはユーザが
意識しないものも多くありますし、画面の上で向き合うことになる
GUIやディスプレイなどのプロセスもあります。多くの場合、
ユーザが直接見ている画面を制御しているプロセスは単なるインターフェース
プロセスに過ぎません。
KONOEが実際に働いているときに走っているプロセスには次のようなものが
あります。
- 階層を扱うプロセス。
- データ収集の機能を受け持つプロセス。
- ユーザインターフェースプロセス。
Updated on 19,Aug,'97