平成14年度未踏ソフトウェア創造事業


採択テーマ概要

1.担当PM  新部 裕(独立行政法人 産業技術総合研究所 情報処理研究部門 主任研究員)
2.採択者氏名  (代表) 奥地 秀則  (共同開発者) 松嶋 明宏
3.テーマ名  次世代GRUBブートローダの基本設計と実装
4.採択金額  8,000,000円
5.テーマ概要

高機能なブートローダであるGRUBの次期バージョンに向けて、基本設計を見直し、実装の改善、信頼性や保守性の向上、そして、要望の多い機能の実現を目指す。

GRUBはGNUプロジェクトの一部として、本申請者が中心となって開発を進めているブートローダである。その機能の豊富さはOpen Firmwareのようなブートモニターに匹敵し、OS開発の基盤として利用されているだけでなく、可読性に富む設定ファイルやメニューインターフェースなど、一般的なユーザに対する利便性も考慮されている。そのため、すでに各種GNU/LinuxディストリビューションやOS開発プロジェクトの標準的なブートローダに採用されており、汎用PCはもとより、IA32ベースの組み込み機器や大規模PCクラスターまで、幅広く普及しつつある。

しかしながら、そうした様々な環境のニーズに応えるため、多くの機能がいたずらに追加されてきた感は否めない。メモリ管理のような基本的な機能も持っておらず、また、その実装はIA32に特化してしまっており、汎用性も考慮されていない。そのため、現在の実装を基にしていては、さらなる機能の充実に応え、保守してゆくことが非常に困難である。

そこで本プロジェクトでは、基本設計を一からやり直し、基盤となるフレームワークの実装を行う。ブートローダはサイズの制限が厳しいため、最低限度の機能を持ったコンパクトなコアイメージによって、その安全性を高めつつ、それ以外の機能を動的に呼び出すことで、拡張性の向上も実現する。また、高位の目標として、スクリプト言語、国際化、他アーキテクチャへの移植を見定め、IA32に依存したコードと汎用的な部品の明確な切り分け、UTF-8のような非ASCII文字コードへの対応、多様なスクリプトを扱うためのフォントマネージャなどの開発も並行して実施する。

6.採択理由

ブートローダはOS開発の基盤であり、重要度が高い。この分野での実績を評価し、これまでの経験に基いた次世代のブートローダの開発に期待する。研究開発の展望と視野、目標と取り組みについては、検討が必要だが,プロジェクト遂行能力は高い。積算根拠が薄弱だったため、PMの判断で時間数を元に開発金額を決定し、結果として増額となった。