【 ここから本文 】
Windows Server
ソーシャルブックマークに登録 :
印刷用ページの表示
【仮想化の教室 第1回】
仮想化への入口 〜仮想マシン概論〜
仮想化技術のすべてをここで学べる!
(2009年07月03日)
「仮想化」は現在最も注目されているテクノロジーの1つであり、近い将来、ごくふつうのIT基盤になる可能性を秘めている。本連載では、仮想化の基礎から実践的な情報まで、仮想化テクノロジー全般について幅広く取り上げる。
山市良
意外に長い歴史を持つ
コンピュータの仮想化テクノロジー
仮想化テクノロジーは、システムが抱えるさまざまな課題を解決するキーテクノロジーと期待されている。データセンターなどにおいては、サーバ統合によるハードウェアリソースの効率的な利用、消費電力や設置スペースの節約、環境対策、テスト環境など、仮想化テクノロジーを適用できる分野は広範囲にわたり、導入も急速に進んでいる。
ところで、読者の皆さんは「仮想化」ということばから何を連想するだろうか。本連載で取り上げるのは、IA(Intel Architecture)ベースのコンピュータを仮想化する「仮想マシン(Virtual Machine)」である。
仮想マシンが登場したのはごく最近のように思われがちだが、その歴史は意外と古い。1970年代に、IBMがメインフレームである「System/370」で物理分割(Physical Partitioning)をサポートしたのが仮想マシンの始まりだと言われている。これは、メインフレームコンピュータを小さな論理パーティションに分け、マルチタスクで同時実行を可能にしたものだ。高額なリソースを有効活用するテクノロジーであった。
一方、1960年代のメインフレームで用いられた「タイムシェアリングシステム(TSS)」は、現在の仮想化テクノロジーの先駆けであったと言えるだろう。TSSは、メインフレームのプロセッサ時間を処理単位に分割し、あたかも同時実行しているかのように見せるものだ。
仮想化テクノロジーは現在、仮想マシン以外にもコンピュータシステムのさまざまな分野に実装されている。例えば、256MBの物理メモリしか積んでいないコンピュータでも、OSやアプリケーションは4GBの仮想メモリ空間を利用できる(x86コンピュータおよび32ビットOSの場合)。これも仮想化テクノロジーの一例である。
Java VMと仮想マシン
両者の違いと共通点とは
アプリケーション開発者は、「仮想マシン」と聞くと、サン・マイクロシステムズの「Java仮想マシン(Java VM)」を思い浮かべるかもしれない。仮想マシンとJava仮想マシンはもちろん、まったく異なるテクノロジーである。しかし、概念的には両者は同じものであると言える。
Java VMは、Java言語で作成したプログラムコード(Javaアプレット)を解釈し、実行するための環境を提供するものである(図1)。
| 図1● Java仮想マシン(VM)は、プラットフォームに依存することなく、同じプログラムコードを実行可能にする |
Java VMは、WindowsやLinuxはもちろん、携帯電話やPDAのOSにも実装されており、同じプログラムコードをさまざまなプラットフォームで実行させることができる。ちなみに、マイクロソフトの「.NET Framework」の「CRL(Common Runtime Language)」も同じようなコンセプトだ。
一方、仮想マシンは、物理的なコンピュータ上に用意された仮想的なコンピュータであり、その仮想的なコンピュータ内でそれぞれ別のOSを稼働させることができる。Java VMとどこが似ているのかというと、仮想化することにより、本来大きく依存するはずの環境を抽象化し、違いを吸収しているところだ。こうして物理的なハードウェアの概念を排除することで、仮想的な実行環境で同じプログラムコードが実行可能となる。
これにより、例えばWindows向けに提供されている(Windows用のドライバしか提供されていない)ハードウェア上で、動くはずのないLinuxを動作させるなど、仮想マシンの構成をまったく変更することなく、異なるハードウェアに簡単に移動することができるのだ。
「仮想化」の意味を「現実を模倣した概念的な世界」と捉えることもできる。これは、仮想マシンの一部の側面を正確に表しているかもしれない。現実を模倣するということは、確かに仮想マシンの実現方式の1つである。
しかし、これは初期の方式であり、これからの仮想化テクノロジーの進化の方向は、Java VMのような抽象化へと向かっていくことになるはずだ。現実を模した仮想マシンは、ある意味特定のハードウェアに依存しており、そのぶん、オーバーヘッドが生じてしまう。
- 関連キーワード
- Windows Server|Windows 7|Microsoft|仮想化
- 【仮想化の教室】
- 第1回 仮想化への入口 〜仮想マシン概論〜
- 第2回 仮想マシンの構造 〜ホスト型VMMの場合〜
- 第3回 仮想マシンの限界 〜Linuxゲストの時計が狂う!?〜
- 第4回 仮想化の進化 〜ハイパーバイザとは?〜
- 第5回 仮想化の実力 〜仮想マシンの同時実行と性能劣化度〜
- 第6回 デバイスの仮想化 〜準仮想化デバイスと完全仮想化デバイス〜
- 第7回 仮想化のコラボ 〜Xenの準仮想化仮想マシンをHyper-Vで動かす〜
- 第8回 仮想化のタイムスリップ 〜仮想化ならではの便利機能に潜む罠〜
- 第9回 企業デスクトップの仮想化 〜MDOPの新顔、MED-V〜
- 第10回 企業デスクトップの仮想化(その2) 〜マイクロソフトのVDI〜
- 第11回 仮想マシンのバックアップ 〜Hyper-Vのライブバックアップとは?〜
- 第12回 Hyper-V Server 2008 R2ってどう? 〜新バージョンの実力と使い方〜
【解説】Windows Server 2008 R2 「キーテクノロジー」 - Part1

“7つ”の最新機能にフォーカス!
【解説】 Windows Server 2008 R2 「キーテクノロジー」 - Part2

“7つ”の最新機能にフォーカス!
【連載】Windows 7の仮想ハードディスクがスゴイ!―(1)

手軽にOSテストもできるVHDってナンだ!?
[米国]マイクロソフト、次期「Hyper-V Server」に複数の先進機能を搭載へ
仮想マシンのライブ・マイグレーションやホスト・サーバのクラスタ化が可能に





























