Leopardで正式版が登場すると言われているBoot Campは、目下のところIntel Mac上でMac OS XとWindowsなどを切り替えてブートさせるテクノロジー。
BIOSではなくEFIからブートするようになっているIntel Mac(海外ではMacintelいうんですか)で、BIOSにしか対応していないWindows XPなどのOSをブートさせるのだそうである。
このテクノロジーが登場した当初、
「これなら、仮想化テクノロジーを利用して、Windowsアプリケーションが透過的に動作するようになるに違いない」
などと喜んでいたものだが……Appleの上層部が「仮想化はない」と何度も何度も表明したため、さすがにこれだけしつこく言ってるんだから仮想化はないかも、という雰囲気になってきた今日このごろだ。
でも、リブートで使えるようになる……というのも、いまひとつ弱い。使い勝手がよろしくない。
というわけで、Mac OS Xの上でWindowsが動くような「完全仮想化」ではないにせよ、もうちょっと後退した使い勝手ではあっても同時に使えるような手段はないものだろうか、と考えてみた。
……………CPUのパーティショニングを行ってはどうか?
4コアのCPUがあったとして、1つのコアをWindows用に割り当ててWindowsをブート。残り3コアでMac OS Xの動作を維持するのだ。
Mac OS XとWindowsが両方とも動いてはいるものの、どちらかのOS上で他方が動いているという状況ではない、という感じか?
………しかし、書いている途中で「あー、マザーボード上の各種デバイスを起動時に初期化するだろうし、リブートするとハードウェアすべてが落ちてしまうことだろう。没!
……………まだ方法があった。ハイバネーション・セレクタとでもいうべきものだ。スリープの際にメモリの内容をHDDに書き出しておく「ハイバネーション」は、スリープ中のバッテリの消耗を防げるということで、PC/ATのノートではポピュラーな機能である。Mac系のノートでも最近になってサポートするようになった(使わないけど)。
この、ハイバネーションからの復帰状態を利用して、Windowsからハイバネーション復帰してみたり、Mac OS Xからハイバネーション復帰して、擬似的にOSを切り替えることはできないだろうか? これなら、ブートからの立ち上げとハードウェアの初期化内容は変わらないだろう。
どうだろう………???