1996 Fiscal Year Annual Research Report
プログラムのメタ情報を利用したソフトウェアの部品化手法の研究
Project/Area Number |
08458062
|
Research Category |
Grant-in-Aid for Scientific Research (B)
|
Research Institution | The University of Tokyo |
Principal Investigator |
益田 隆司 東京大学, 大学院・理学系研究科, 教授 (80114130)
|
Co-Investigator(Kenkyū-buntansha) |
千葉 滋 東京大学, 大学院・理学系研究科, 助手 (80282713)
|
Keywords | 自己反映計算 / クラスライブラリ / 部品化 |
Research Abstract |
今年度は計画の初年度であるので、まず、部品化の対象となる実際のソフトウェアを作成した。これらは次年度以降の研究の基礎データとなる。まず、Tcl/tkを元にしたGUI(グラフィカル・ユーザ・インタフェース)ライブラリをC_<++>で作成し、現在の標準的な言語機能では、どのような機能の部品化が可能で、どのような機能は特別な処理系などを用いないと部品化できないかを検討した。その結果、ラムダ関数や、特別なシンタックスを必要とするような機能を、うまく部品化できないことが明らかになった。また、ベクターライブラリやSTL(標準テンプレート・ライブラリ)と、同様の機能をライブラリを使わずに記述した場合とを比較し、どのような原因で実行効率が低下しているのかを考察した。そして、オブジェクトなどの高度な抽象化機能が、コンパイラの最適化を邪魔し、結果として実行効率を低下させていることがわかった。一方、ライブラリを用いない場合は、プログラマが高度な抽象化をおこなわずに、低レベルな記述をおこなっているので、実行効率がよいことが判明した。 さらに、ライブラリの他に、オペレーティング・システムのモジュールの作成もおこなって、部品化の可能性を研究した。作成したモジュールは、分散共有メモリ、分散ファイルシステム、Webサーバ、マルチスレッド、仮想記憶管理、などである。これらの作成をとおして、従来型のモノリシック・カーネルでは個々のモジュールを密接に結合させることで、高い実行効率を達成していること、一方、個々のモジュールを部品として独立させようとすると、実行効率が犠牲になることがわかった。また、部品化した場合の実行効率の低下をおさえるには、特別なインタプリタをカーネルに組みこむ手法が有効であることを明らかにした。
|
-
[Publications] 西村 健,猪原 茂和,益田 隆司: "ユーザレベルプロトコルのカーネル内実行による大量データ転送の効率的実現" 1996年並列/分散/協調処理に関する『秋田』サマー・ワークショップ(SWoPP秋田'96)予稿集(情報処理学会OS研究会). 96-OS-73. 61-66 (1996)
-
[Publications] 上原 敬太郎,猪原 茂和,益田 隆司: "分散協調トランザクション記述のためのフレームワーク" 第8回コンピュータシステムシンポジウム情処シンポジウム論文集. Vol.96 No.7. 45-52 (1996)
-
[Publications] 中村 孝幸,猪原 茂和,益田 隆司: "ユーザスクリプトをカーネル内実行する低オーバヘッドの外部ページャ機構" 情報処理学会論文誌. vol.37 no.12. 2266-2275 (1996)
-
[Publications] K.Uehara,S.Inohara,H.Miyazawa,K.Yamamoto and T.Masuda: "A Framework for Customizing Coherence Protocols of Distributed File Caches" In Proceedings of the 16th IEEE International Conference on Distributed Computing Systems(ICDCS). 83-90 (1996)