研究分野 システム・ソフトウェア

計算機システムの根幹をなすのは、OSに代表されるシステム・ソフトウェ アです。ですから、システム・ソフトウェアの専門家とは、例えば、
  • 「WindowsNT が Unix より遅いのはなぜか?何の目的を優先させたために遅く なったのか?」
  • 現在の http (Web の通信プロトコル) の設計上の問題点は何か?」

という疑問に的確に答えられる人のことです。しかしこのような人達は、専門 家ではありますが、システム・ソフトウェアの研究者ではありません。

システム・ソフトウェアの研究とは、

  • 「では、WindowsNT の利点はそのままに、Unix と同等の速度を得るには、ど うしたらよいか?」
  • 「もし、http を始めから設計し直すとしたら、どうするべきか?」

という疑問に答えていくことです。このような疑問に答えていくためには、単 にシステム・ソフトウェアに詳しいだけでは不足で、実際にそれを動かすハー ドウェアの性能や、それを利用するアプリケーションがどんな機能をシステム・ ソフトウェアに求めているのかも、知っていなければなりません。

上に挙げた例は、ごく普通の人にもわかり易いようにしたので、実際に益田研 究室で研究しているテーマではありません。しかし、上で述べたような目的意 識のもとに、益田研究室では、より高度な専門分野で次のような研究開発をお こなってきました。

並列OS Xero

マルチプロセッサ計算機上で、CPU 資源を無駄なく使うためには、thread と いう機能をOSが提供しなければなりません。Xero では、ユーザとOSが協 力して thread を制御し、CPU の利用効率を改善する技術を研究しました。

64bitOS Lucas

64bit の CPU を使った計算機では、メモリ・システムとファイル・システム を融合して、高速動作させることができます。そのようなシステムを実際に作 成するためには、一貫性制御などの方法を新しく開発しなければなりません。 Lucas では、そのような基礎技術を開発しました。

自己反映言語 OpenC++

ソフトウェアを拡張可能なように設計するのは最近の主要な技術潮流ですが、 言語コンパイラを拡張可能に設計する方法は、まだ研究段階です。OpenC++ は C++ 言語を実際に拡張可能にした言語です。これを使うと、C++ コンパイラ用 に、分散処理用 Plug-in や、並列処理用 Plug-in ソフトウェアを作ることが できます。

以上のような研究プロジェクトの他にも、分散システム上でポインタや高階 関数を高速に取り扱うための機構の研究や、グループウェアという多人数で使 うアプリケーションの開発ツールキットの研究、オブジェクト指向データベー ス、ユーザインターフェースの研究もおこなっています。これらの研究成果は、 主要な国際学会で発表されており、他の研究室同様、大学院生が海外の学会で 研究発表する機会も多いといえます。

平成8年4月現在の研究室の構成は、教授、助手(千葉)、秘書、博士課程4名、 修士課程5名、受託研究員1名です。研究設備としては、Sun SPARC、DEC Alpha、 HP PA-RISC、PC、Macintosh など一般的なものですが、研究の必要のため、通 常の SunOS や WindowsNT だけでなく、 Mach 3.0 を始め NetBSD、FreeBSD など雑多なOSが動いているのが特徴といえば特徴です。

戻る


<vu@is.s.u-tokyo.ac.jp>

Last updated on Thursday, 3 1997