IPA


開発成果一覧へ





2005年度上期 未踏ソフトウェア創造事業  採択案件評価書


 



1.担当PM

   並木 美太郎 (東京農工大学 大学院共生科学技術研究部 助教授)



2.採択者氏名


開発代表者

腰前 秀成 (早稲田大学大学院 理工学研究科 修士課程)

共同開発者

杵渕 雄樹 (早稲田大学大学院 理工学研究科 修士課程)


3.プロジェクト管理組織


  日本エンジェルズ・インベストメント株式会社



4.委託金支払額


  6,500,000



5.テーマ名


  L4VM:マイクロカーネル上で動作する仮想マシンの構築



6.関連Webサイト


  http://www.dcl.info.waseda.ac.jp/l4vm/



7.テーマ概要


 本プロジェクトではL4マイクロカーネル上で動作する仮想マシンL4VMを構築した。L4VMはQEMUのダイナミックトランスレーション技術を用いて実装を行い、多種のCPUアーキテクチャをエミュレーションすることで、異種アーキテクチャのOSと応用プログラムを一つの計算機上で実行することができる。本開発では、x86上においてPowerPC、SPARCといった様々なCPUアーキテクチャ向けのOSを同時に複数動作するシステムを構築し、その性能を評価することでアイデアの妥当性を検証している。



8.採択理由


 一つの組込みシステムでリアルタイム処理と一般のAPを混在させるための一手法として、VM上で複数のゲストOSを動作させる手法はいくつか提案されてきた。本申請では、L4とQEMUを修正したL4VM上でゲストOSを動作させる。VMによる、特にQEMUのダイナミックトランスレーション手法を組込みシステムに適用する着想はアイデアとしても、実用上も、興味深く、未踏性があると判断した。



9.開発目標


 本プロジェクトでは、
 ・複数のゲストOSの同時実行
 ・複数のゲストOSによるデバイス共有
 ・複数のターゲットアーキテクチャ対応
を目標とするシステム構築手法を提案する。現在、資源管理の柔軟性およびセキュリティの面からVMによるシステム構築法が再び脚光を浴びているが、本開発では
 ・マイクロカーネル L4 により個々のマシンイメージを提供し、
 ・QEMUにより異種アーキテクチャをエミュレーションすることで
異種アーキテクチャおよび異種OSを一つの計算機で同時実行できるシステム構築法を提案する。例えば、x86アーキテクチャ上で、x86のLinuxとFreeBSDを実行することはもとより、同じ計算機でPowerPCやSPARCなどのOSと応用プログラムを実行できる。



10.進捗概要


 堅実に開発を行うと同時に積極的に学会、展示会で発表した。ソフトウェア科学会SPA-Summer、COEワークショップ、組込み展示会ET2005などで途中の成果を公表すると同時に意見収集につとめていた。



11.成果


 現在、x86アーキテクチャ上で動作する PowerPC、SPARCアーキテクチャのQEMUとL4VMが完成しており、x86上でSPARC-Linuxなどが実行できる。デバイスについてはデバイスサーバによりキーボード、VGA、シリアルについて実装が終了している。また、システム生成が簡単になるような設定ファイルによるシステムの自動構築を試みている。
 本開発により、ゲスト・ホストに異なるアーキテクチャを実行できるほか、ゲストオペレーティングシステム同士の連携ができる、L4VMの移植性が高いことから拡張性・移植性に優れているなどの利点がある。性能については、ダイナミックトランスレーションのオーバヘッドもさることながら、入出力管理、応用プログラムからサブシステムを呼び出すプロセス間通信のオーバヘッドを明らかにすることができた。



12.プロジェクト評価


 VM370にはじまるfsVM(仮想機械)は、一時期マイクロカーネルを経て、異種OSの実行、セキュリティ、可用性の向上の要求から、VMware以降、システム構築法としてVM(仮想機械)は再び脚光を浴びている。また、バイナリ変換によるアーキテクチャのエミュレーション技術も根強く使われ続けている。本プロジェクトでは、L4マイクロカーネル上に、QEMUというバイナリ変換を行うエミュレータをベースにL4VMを実装し、その上で異種アーキテクチャのOSを実行できる方式を提案した。
 着想としても、また応用上も資源管理手法などにも適用できるなど興味深いアイデアであるが、オーバヘッドなどが実際にどれくらいになるかは実装しないとわからず、その意味で本プロジェクトはOS分野に対して貴重なデータを提供すると判断した。腰前PJ、杵渕PJともにシステムの全体設計に共同で携わると同時に、適切な分担を行い順調に開発を進めたと判断する。
 OSは巨大なソフトウェアであり、実装、評価に手間取るが、異種アーキテクチャの実装によるオーバヘッド測定、デバイスの追加による評価などを今後行うことで、本方式の有効性を明確することができるので、ぜひ開発を続けてもらいたい。



13.今後の課題


 (1) 仮想デバイスの追加
 現在、L4VMシステムがサポートするデバイスとしては、シリアル、キーボード、VGA、RAMディスクがあるが、マウス、ハードディスク、ネットワークカード、グラフィックカードについては今後実装する予定である。
 (2) ホスト・ゲストのアーキテクチャ追加
 現在、ホストアーキテクチャはx86のみ、ゲストアーキテクチャとしてx86、SPARC、PowerPCを実行できるが、ゲストアーキテクチャとしてMIPSおよびARMを予定している。ホストアーキテクチャについてはQEMUはx86以外にPowerPCとARMを利用できるので、検討する予定である。


  ページトップへ   






  Copyright(c) Information-technology Promotion Agency, Japan. All rights reserved 2004