VirtualBox

VirtualBoxの最新ニュースをまとめて検索!

VirtualBox
Virtual Box 3.0.4 が Kubuntu 9.10を Windows 7 ホスト上で走らせている様子
開発元 サン・マイクロシステムズ
最新版 3.1 (2009年11月30日)
対応OS クロスプラットフォーム
種別 仮想機械
ライセンス プロプライエタリ / GNU General Public License
公式サイト http://www.virtualbox.org/
  

VirtualBox (バーチャルボックス)は、x86仮想化ソフトウェア・パッケージで、当初ドイツのソフトウェア会社Innotekにより作成され、現在、サン・マイクロシステムズによりSun xVMの一部として開発されている仮想化のプラットフォームである。これは、既存のホスト・オペレーティング・システム上にインストールされ、このアプリケーションの中で、追加のオペレーティング・システム(それぞれゲストOSとして知られる)を載せて実行することができる。例えば、Microsoft Windows XPホストOS として動作している単一仮想マシン上で、Linuxをゲストとすることができる。あるいは、OpenSolarisが実行されているマシン上で、Windows VistaをゲストOSとして実行することが出来る。

サポートされるホスト・オペレーティング・システムにはFreeBSD、 Linux、Mac OS XOS/2 Warp、Windows、そして Solarisが含まれており、ゲスト・オペレーティング・システムとしてサポートされるのは、FreeBSD、Linux、OpenBSD、OS/2 Warp、Windows、そして Solaris が含まれる。[1]

DesktopLinux.com の2007の調査によると、VirtualBoxは、Linuxデスクトップ上でWindowsプログラム群を走らせる三番目に人気のあるソフトウェア・パッケージである。[2]

目次

[編集] 歴史

当アプリケーションは、最初にプロプライエタリ・ソフトウェア・ライセンスで提供され、製品VirtualBoxのある版は、個人的あるいは評価の使用に対してのみ無料であり、「VirtulBox Personal Use and Evaluation Licence (PUEL)」が適用された。[3] 2007年1月、数年の開発の後、VirtualBox OSE(Open Source Edition - オープンソース版)がフリーソフトウェアとして、商用と個人的な使用のためにリリースされ、GNU General Public License (GPL), version 2が適用された[4]

VirtualBoxの元々の開発会社innotekはまた、Connectixの製品で後にマイクロソフトにより買収された製品に対して、OS/2Linuxの仮想化のサポートの開発[5]や、OS/2への移植[6] にも貢献した。特に、innotekはMicrosoft Virtual PCMicrosoft Virtual Serverの両方に含まれる「付加」コードを開発し、これはホスト・ゲスト間の相互作用を大いに進歩させた。OS/2は拡張されたリングプロテクションが複雑であり、仮想化で実行するのは困難だった。

サンマイクロシステムズは2008年2月にInnotekを買収した。[7][8][9]

[編集] 機能

VirtualBox Webコンソール
  • 仮想マシンのRemote Desktop Protocol (RDP)による制御
  • iSCSI サポート
  • USBサポート。RDP経由のリモートデバイスを含む。
  • スナップショット
  • シームレス・モード
  • クリップボード
  • 共有フォルダ
  • シリアルデバイスと、システム間の切替えを支援するユーティリティ
  • コマンドラインからの操作(GUIに追加)
  • リモート・ディスプレイ(ヘッドレス:モニターのないホストマシンの場合に有用)

[編集] エミュレートされる環境

複数のゲスト・オペレーティング・システムをロードすることが出来るが、通常、複数を一度に実行するのは実際的ではない。それぞれは、独立して開始されたり、一時停止されたり、終了されたりすることができる。 複数のオペレーティング・システムを同時に走らせる場合、使用可能なメモリ量が重要な要素となる。

[編集] ハードウェア・エミュレーション Hardware emulation

VirtualBoxがサポートするのは、インテルのハードウェア仮想化VT-xと、実験的なサポートであるがAMDAMD-Vを含んでいる。しかし、デフォルトではどちらも使用しない。[10]

ハードディスクは、「仮想ディスク・イメージ(Virtual Disk Images)」と呼ばれる特別なコンテナ・フォーマットとしてエミュレートされ、それは現時点では、他の仮想化ソリューションが使っているのとは非コンパチブルなフォーマットである。これらは通常ホスト・オペレーティング・システム上のシステムファイル(拡張子 .vdi)として格納される。別な方法として、VirtualBoxは、特殊な機能としてiSCSIの対象と繋がることが出来、それらを仮想ハードディスク群として使用することが出来る。 ISOイメージもCDやDVDドライブとして使用できる。例えば、LinuxディストリビューションのDVDイメージをダウンロードして、直接VirtualBoxによって使用することが出来る。その場合、ディスクを焼く必要はない。また、物理的ディスクを仮想マシンから直接にマウントすることも可能である。

デフォルトでは、VirtualBoxは、グラフィック・サポートを標準のVESAカードとして8MBのRAMとともに提供する。これらの値は調節可能である。Windows、Linux あるいはSolarisゲスト用のゲスト用の追加として、特別のビデオ・ドライバーがあり、それによりより良い効率と機能を得ることが出来る。たとえは、動的な解像度の調整が、VMのウィンドーのサイズが替えられたときに行われる。

Ethernetネットワーク・アダプターとして、VirtualBoxは、AMD PCNetを仮想化する。デフォルトでは、VirtualBoxは、これをNATにセットして立ち上げる。これを通じて利用者プログラム、たとえはFirefoxsshなどが動作可能である。他の解決法として、例えば、ゲスト間の仮想ネットワークなどがある。

音源カードとして、VirtualBoxは、インテル ICH AC'97、あるいはSoundBlaster 16カードを仮想化する。

「全てを含んだリリース」(オープンソース版には含まれない)には、USBコントローラがエミュレートされ、ホストに取り付けられたどのUSB機器も、ゲストから見ることができる。もし、VirtualBoxがRDPサーバとして振る舞う場合、遠隔のRDPクライアントはそれらがあたかもホストに取り付けられているように使用できる。

VirtualBoxは、出来るだけ多くのコードをネーティブに(ホストのプロセッサ上で直接)走らせようとする。これは、ユーザモードのコードについても働く。これはゲストのIntel ringアーキテクチャ:リング3で走っている。しかしながら、ゲストのリング-0のコード、これは通常多くの特権命令を含み、割り込みを受けなければならない。VirtualBoxは、比較的斬新なアプローチによりこの矛盾を解決した。それは、ゲスト・オペレーティング・システムを騙し、そのリング-0のコードが実際にはリング-1で実行される。リング-1は通常インテル・アーキテクチャでは使用されていない。

もし、問題が起きたら、VirtualBoxは、組込みの動的再コンパイラーで、他の仮想化プログラムがするように行う。VirtualBoxの再コンパイラーはフリーでオープンソースのQEMUをベースにしている。追加として、VirtualBoxは自動的に逆アセンブルし、多くの状況では、ゲストのコードが将来再コンパイルされるのを避ける。繰り返される再コンパイルは比較的高価に付く。[11] 結果的に、ゲストのリング-3とリング-0のコードをほとんどの場合、ネイティブに実行することが出来る。そして、この「伝統的な」再コンパイルと実際のコードへのパッチ当ての組合せによりVirtualBoxは、VMwareと比較できるような効率を手に入れている。[12]

VirtualBoxはまた、より良い効率とさらなる安全性のためにIntel VT と AMD AMD-Vのハードウェアの協力による仮想化をサポートする。[13]


Mac OS X版では、ネットワーク・ブリッジ(ホストインターフェース)がサポートされていなかったが、バージョン2.0でサポートされた。

[編集] 3.0までに追加された機能

  • 64ビット・ゲスト(2.0でサポートされた)
  • AMD-VVT-xのための、入れ子(ネステッド)・ページング
  • 3Dアクセラレーション(ゲストOSが32ビットのWindows XP及びVistaの場合)

3Dアクセラレーションはバージョン2.0で追加され、3.0で実験的にDirectX9のサポートがなされている。ただし、現状では32ビットのWindows XP及びVistaゲスト環境に限定されており、64ビット環境ではサポートされない。また、Windowsゲスト環境におけるビデオドライバがWDDMのものではないため、Windows Vista以降のDesktop Window Managerによるデスクトップコンポジション機能やAeroテーマを動作させることはできない。

[編集] 将来の開発予定

VirtualBox 1.6以降への追加が予定されている機能のロードマップは、CommunityOne 2008 会議において公開された。[14]ロードマップには以下が含まれる:

  • Memory ballooning[15]
  • 動的マイグレーション
  • よりポータブルなスナップショット
  • VMware Virtual Machine Disk Format (VMDK) サポート
  • Microsoft VHD サポート
  • 次世代シームレス・ウィンドウ動作。より良いデスクトップとの統合を含む
  • 準仮想化:Virtual Machine Interface (VMI) と Windows "Enlightenments" 準仮想化を、使用

[編集] プロプリエタリ版とオープンソース版

VirtualBoxソフトウェアには、ふたつの版がある。

完全なVirtualBoxパッケージは、プロプリエタリ・ソフトウェアライセンスの元にあるが、個人や教育あるいは評価目的の製品の利用は無料である。[16]完全版VirtualBoxの商業目的のためのライセンスはSunから購入することができる。

ふたつ目の版はVirtualBox Open Source Edition (OSE) - オープンソース版と呼ばれ、GNU General Public License (GPL)の元に公開されているフリーソフトウェアである。それには、以下のソース非公開の機能が欠けている:[17]

  • 組込みのRemote Desktop Protocol (RDP)サーバ
  • USBサポート(上記参照)と、RDPサーバとリモートUSBデバイスとの組合せ
  • 仮想ハードディスクのためのiSCSIサポート(上記参照)

フリーソフトウェア版は2007年8月30日Debianの不安定版に受け入れられた。[18] VirtualBox OSE パッケージは、Ubuntu 7.10 以降のユニバース・リポジトリに含まれている。[19]

USBサポートは、VirtualBoxの後の版で組み込まれた[要出典]

[編集] 関連項目

[編集] 脚注

[編集] 外部リンク

最終更新 2009年12月1日 (火) 14:01 (日時は個人設定で未設定ならばUTC)。
【VirtualBox】変更履歴

ご利用上の注意