システム仮想化技術 †
システム仮想化技術 (VT) は VM(Virtual Machine) 技術を補佐するための技術です。
現状の VM は、ソフトウェアで仮想的に CPU をエミュレーションすることによって複数の OS を同時に動作させています。VT ではソフトウェア側で行っていた CPU のエミュレーションをハードウェア側で一部肩代わりすることで、より高速で安定した仮想環境を構築することを目的としています。
システム仮想化技術の特徴としては以下の通り。
- Intel/AMD 社が開発に名乗り
システム仮想化技術の開発は現在 Intel(VT)/AMD(Pacifica) 社が各々開発を行っています。両社ともシステム仮想化技術の実装の違いは殆どありませんが、命令コードに互換性が無く、どちらか一方を単純に流用することは困難のようです。
現在('05/11)、Intel 社は既に Xeon に VT を実装していることを表明していますが、BIOS の設定で一律 VT は無効になっているようです。Intel では様子を見て VT 対応ソフトウェアが出揃った時点で VT を有効にしたい意向があるようです。AMD 社は 2006 年出荷予定。
→ AMD : CPU/システム仮想化技術/Pacifica?
→ Intel : CPU/システム仮想化技術/VT
- VMM (Virtual Machine Monitor)
VMM は、各 VM を管理するソフトウェアです。システム仮想化技術は、VMM を通してシステムの仮想化を行います。
- VT に特化した命令コード
VM を操作するための命令コードが新たに追加されています。VMX (Virtual Machine Extensions) と言われています。
- 2 通りの仮想環境
VT で実現できる仮想環境として以下の2通りの方法が考えられています。
- システム起動時による仮想化を行う方法 (Silvervale Technology)
従来の BIOS では実現することが不可能で新しい仕組みである EFI をサポートする必要性があります。現在、EFI はIA-64 ベースのシステムで実用化されています。よって IA-64 ベースであれば比較的実現は可能とされています。IA-32 ベースのシステムの場合、BIOS に置き換わる仕組みとして EFI32 が開発中でありますが、今の所、システムに実装されておらず目処も立っていない状況のようです。
→ BIOS/EFI
- Host OS 上に仮想 OS を構築する方法 (VT)
Xen や VMware 等の仮想環境ソフトウェア上で利用されることを目的としています。VT はこれらのソフトウェアの補佐的な役割となります。現在、Intel/AMD 社は、これらのソフトウェア開発元と積極的に提携しているようです。
最近、Xen というオープンソースの元で開発されている仮想環境ソフトウェアが注目を集めています。Intel/AMD 社は Xen の開発者に対し、仮想環境のサポートを申し出ています。VMware や Virtual PC 以外にも Xen のオープンソースな環境に新たなる市場を見出している証拠かもしれません。
VT 対応の仮想化ソフトウェアは以下の通り。
- Xen
'05/12-'05/02 出荷予定の Xen 3.0 以降で VT(Intel), Pacifica(AMD) に対応する予定とのこと。
- VMware
対応表明。日程不明。
現在('05/11)、VMware Workstation 5.5 RC2 にて VT を利用した 64-bit 環境の構築が可能のようです。パフォーマンス面でどの程度向上しているのか、興味深いです。
- Virtual Server
対応表明。日程不明。
関連情報 †
用語 †
News †