ハイパーバイザー
ハイパーバイザー(英語:hypervisor)とは、コンピューターの仮想化に特化した特化型OSのことである。
概要[編集 | ソースを編集]
ハイパーバイザーはファミコンのカセットのように電源を入れるといきなりエミュレーターが立ち上がるというものである。ハイパーバイザーをインストールしたパソコンはまるで昔のワープロ専用機やPC-9801などのフロッピーディスクから直起動するゲームみたいな感じでエミュレーターが起動する。
ハイパーバイザーは一般的なOSの上でソフトウェアとして動くエミュレーターと比べると、本来OSがある位置でエミュレーターが動くので非常に高速に動作するという特徴がある。
一方で独自OSであるがためデバイスドライバが十分とは言えないことも多々ある。サーバー向けパーツの有名どころはほぼメジャーなハイパーバイザー向けのデバイスドライバを用意しているが、パソコン向けパーツはデバイスドライバがないという製品も多い。
このデバイスドライバの問題を解決すべく、LinuxやWindowsのカーネルに穴を開けてエミュレータを組み込むという方式も登場している。この方式はLinuxやWindowsのデバイスドライバを利用できるという特徴がある。
名前の由来[編集 | ソースを編集]
遥か昔、メインフレームなどの大型機の世界では一般的なOSのことを業界用語で格好付けてスーパーバイザーと呼んでいた。
ハイパーバイザーはハードウェアの真上で動くエミュレーターでありスーパーバイザーより強い。つまりハイパーである。
主なハイパーバイザー[編集 | ソースを編集]
VMware vSphere以外のハイパーバイザーはWindowsやLinuxなどの既存の汎用OSに穴を開けるかたちで実装されている。この方法では既存OSのデバイスドライバーを流用できるのでハイパーバイザーを動かせるハードウェアがグッと広がるという利点がある。
ただし、既存OSに穴を開ける方式はエミュレーターの動作に必要のない部分が大量にリソースを消費するという欠点もある。メモリやハードディスクを大量に消費してしまうのである。最近ではメモリ価格が下がったことで問題になることも少なくなったが。
それ以上に、OSに穴を開け、ハードウェアを見えるようにするという行為は、常識的に考えて仮想化を必要としていない人たちが受け入れられるものではなかった。多くのOSは穴を塞ぐことに邁進しつづけてきたのだから当たり前である。
当然のように大論争を巻き起こし、たとえばXenのLinuxカーネルへの穴開けは長らく非公式で、Linuxカーネルに自前でパッチを当てる必要があった。いわゆる魔改造であり、穴開け済みLinuxディストリビューションのXenServerが登場するくらい一般人には敷居の高いものであった。このXenのLinuxカーネルへの穴開けはLinux側の妥協により公式のものとなったが非常に長い年月を要した。