研究概要 |
超並列計算機のユーザには,色々な種類が考えられる。OSの提供する機能をそのまま利用するユーザ,OSの提供する機能を少し変更と利用するユーザ,ハードウェアを生に使いできるだけ性能を出すようにするため,OSの機能が逆に邪魔になるユーザなどが考えられる。このような色々な要求が考えられる場合,OSが単一のインターフェイスを提供するわけにはいなかい。OSは提供するレベル応じて階層的に分けられるべきである。その最下層に位置するのがマイクロ・カーネルである。ハードウェアを生に使いたいユーザもプロテクションの関係からマイクロ・カーネルの上にプログラムを書かなくとはならない。そのため,マイクロ・カーネルは非常にオーバーヘッドの少ないものでなくてはならない。機能としては,パーティションに分けられたPE(プロセッシング・エレメント)が別のパーティションと干渉しないようにすること,メモリ管理,スレッド管理,超並列通信,パーティション間通信などが必要である。このように従来のマイクロ・カーネルより機能の限定したメタ・マイクロ・カーネルを実現する必要がある。 このように最小機能を備えたメタ・マイクロ・カーネルのプロトタイプを作成した。現在は単体であるが,今後,共有メモリ型の計算機にも移植を行ない実験を行なう予定である。また,ネットワークにも対応し,超並列をシュミレートする予定である。 超並列通信機能に関しては,メタ・マイクロ・カーネルは,その上でのOSの実現を可能にする通信機能と,ユーザのプログラムにおいて利用する機能を実現しなくてはならない。超並列通信を行なうたびにカーネルの仲介を必要としたので性能を出すことができない。通信の初期化および通信が長時間ブロックされる場合にのみカーネルは仲介し、それ以外の場合には完全にユーザ・レベルで通信できる必要がある。
|