Archive for October, 2007

10

04

2007

MacでWin – VM編 (その3)

VMWare Fusion を用いてBootCampパーティションからWindowsを起動する    VMWare FusionやParallels Desktop for Mac では、前回の記事 『MacでWin – VM編 (その2)』(現在この記事は消失中) で行ったような方法で仮想マシンのイメージファイルを作成し、そこにWindowsをインストールする代わりに既存のBootCampパーティション上のWindowsをそのまま使って仮想マシンのイメージファイルを作成することができます.    この場合、既にWindowsのインストールは済んでいますので、面倒で退屈なWindowsのインストールに時間を掛けずに済みます.また、既存のWindowsで設定してあるユーザ環境をそのまま引き継げるのでとても重宝します.BootCampとVMWareとでシームレスなWindows環境を構築できます.  ただ残念ながらこの方法ではBootCamp時のようにIntelMacのハードウェアに直接アクセスするわけではないので、やはりパフォーマンスの低下は避けられません.    IntelMac上でWindowsを動かす方法として、BootCamp、VMWare Fusion(通常のイメージファイル作成)、VMWare Fusion(BootCampパーティション利用)の3つの方法がありますが、この3つの方法の違いを分かり易くするため、図にしてみました.   Virtual Machine のOS レイヤー     BootCamp方式はWindowsを動かしているハードウェアがIntel Mac であること以外は通常のWindowsの利用方法と全く変わりはありませんので容易に理解できると思います.AppleからIntelMacのハードウェアに適合したWindows用のデバイスドライバが提供されていますので、パフォーマンスは抜群です.    図左下のVMWare Fusionでのイメージファイルによる利用法は、VMソフトウェアの稼働方法としては一般的な形態で、VMソフトウェア専用のイメージファイルをホストOS上に作成し、そのイメージファイルの中にゲストOSをインストールする方法です.    この場合、Windowsからのハードディスクへの入出力操作は、イメージファイルの中に作られた仮想的なWindowsドライブに対して行われることになり、VMWare FusionおよびMac OS X が間に入るので、ディスクアクセスのパフォーマンスが低下します.    今回のテーマである VMWare Fusion でBootCampパーティション上のWindowsを利用する方法(右下図)ですが、前の二つの方式の折衷案みたいな方式で、WindowsシステムそのものはBootCampで作成されたWindowsのシステムをそっくりそのまま使う方式です.    イメージファイルの中にWindowsシステムをインストールする訳ではありませんので、Windowsのハードディスクへの入出力操作は実際のファイルシステム(FAT32またはNTFS)に対して行われます.但し、このWindowsシステムに組み込まれているデバイスドライバはIntelMac用なので、VMWare Fusion の仮想マシンのハードウェアには適さないので、新たに仮想マシン用のドライバが必要になります.このため、この方式でWindowsを動かす場合でも仮想マシンのイメージファイルは必要です.イメージファイルそのものにはWindowsシステムを組み込む必要がないので、このイメージファイルは非常にコンパクトです.    先のイメージファイル方式の最大のボトルネックである仮想ディスクドライブへの入出力が減る分、パフォーマンスは改善されるはずです.    VMWare Fusion で既存のWindows [...]

10

03

2007

MacでWin – VM編 (その1)

MacでWindowsを動かす別な選択肢 – Virtual Machine    先の『MacでWin – BooCamp』編ではIntel MacにWindows用のパーティションを用意し、そこの直接Windowsをインストールして起動OSを切り替えてWindowsを動かす方法について述べてきましたが、別の選択肢として、仮想計算機(通称Virtual Machine : 略してVM と呼ばれる)を用いて、WindowsやLinux, Soralis 等のOSをIntel Mac上で動かすことが可能です.    VM自体の歴史は結構古くて、1980年代前半にはIBMのメインフレームSystem/370上でVM用のOS(VM/XA)が稼働していました.PCの世界でVMが使われるようになったのは比較的最近の事で、レンタルサーバなどのホスティングサービスで盛んに使われているのではないかと思います.    デスクトップ環境ではVMWare社がLinuxやWindows上で稼働するVMソフトウェアを数年前から手がけていましたが、ごく一部の特殊なユーザが利用しているというのが現状ではないでしょうか.Macの世界でも昨年のIntel Macの発売とParallels社のParallels Desktop for Mac のリリース以来、VMに注目しているユーザは多いのではないでしょうか.    現在、Mac用のVMとしてParallels Desktop for MacとVMWare Fusion の2つがしのぎを削っており、バージョンアップが頻繁に行われており、どんどん改良され使い易くなってきています.そこで、今回はVMを使ってWindowsを動かす方法について簡単に紹介しようと思います.      VMという概念は一般の方々にはあまりなじみがないと思いますので、簡単に説明しておきます.一般的なコンピュータでは、コンピュータ本体であるハードウェアとその上で稼働するMac OS X やWindows XP, Vista などのオペレーティングシステム(OS)と呼ばれるソフトウェアとこれらのOSの基で動くアプリケーションソフトウェア群によってコンピュータシステムが階層的に構成されていることはご存じの事と思います.    この3つの階層のうち、一番上位のアプリケーション層にVirtual Machine という仮想的なハードウェアをソフトウェアによって構築するアプリケーションソフトウェアを一般的にVMソフトウェアと呼んでいます.先のParallels Desktop for MacやVMWare FusionはこのVMソフトウェアに相当します.このVMソフトを動かすためのOSをホストOSと言い、VMソフトウェア上のVirtual Machineで稼働するOSをゲストOSと呼んでいます.    ゲストOSの立場から見ると、下位のホストOSや実際のハードウェアがどのような構成であろうと関係なく、あくまでもVirtual Machineという仮想的なコンピュータハードウェア環境下で動いているとしか認識していません.実際のハードウェア構成やホストOSの違いはすべてVMソフトウェアが間に入って上手く処理してくれるため、ゲストOSはあたかも自分が専用のハードウェア上で稼働しているのと同じように振る舞うことができるのです.     [...]

10

02

2007

MacでWin – BootCamp (その5)

マルチパーティションでのWindows XPインストール    前回の記事でマルチパーティション環境でのWindowsのインストール方法について概要を説明しましたが、実際に試したパーティションの構成を図示しておきます.   “実験したパーティション分割パターン    インストールが成功するのは、左端のパーティションパターンのみで、それ以外のパーティション構成でインストールしようとすると、Windowsの2nd stage インストーラー起動時に、次のようなエラーメッセージが出てこの状態から先に進められません.     “インストール時のエラーメッセージ    パーティションツールやコマンドを駆使すれば、左端のパーティションパターン以外でもWindowsを稼働させることは可能なのですが、複雑な手順を踏まなければ実現できませんでした.一番左端のパーティションであれば通常のDiskUtilityだけで簡単に実現可能です.OSの再インストールの事などを考えるとWindowsは第4番目のパーティションにインストールするのが良いでしょう.   実際にMacBookのマルチパーティション環境でWindowsが稼働している様子です.   [galleria gid="screen" bgs="width:640px; "]

10

02

2007

MacでWin – BootCamp (その4)

BootCamp Assistant を使わずにWindowsをインストールするには    前回の記事で、Windows用のFAT32/NTFSパーティションを2〜4番目のどこかに確保すると述べましたが、実際にWindowsをインストールしてみると、どのパーティションにインストールするかによってWindowsのインストールが成功するか失敗するか決まることが分かりました. 色々と実験を重ねた結果、次のような条件であれば上手くWindowsがインストールできることが判明しました.      ・Windows用のパーティションが2〜4番目のパーティションのうち一番最後に確保されている  ・Windows用のパーティションが1つしかない   実地検証    今回の実験用としてMacBookを使うことにしましたが、 このマシンは現役で使用している物なので、できれば現状のハードディスクに変更を加えるのは避けたいところです.そこで実験には手持ちの余っているハードディスクを使うことにしました.幸いMacBookのハードディスクの入れ替えは簡単に行えるので、この手の実験を行うには好都合です.あと可能であれば、FirewireかUSBの外付けハードディスクを用意し、起動可能なシステムと各種ユーティリティーツールを入れておけば、トラブル時やメンテナンスなど何かと重宝します.     Step 1. OSXに標準で備わっているDiskUtilityを使って予めパーティションを作成する   [galleria gid="prepare" columns="2" bgs="width:340px ; background-color: #eee; border: 1px solid #888; margin: 0 auto;" imgs="border: none;"] ER105:~ yasuaki$ sudo gpt show disk0 gpt show: disk0: Suspicious MBR at sector 0 start size index contents [...]

10

01

2007

MacでWin – BootCamp (その3)

BootCamp Assistant によるWindowsのインストール    近日中にリリース予定のMac OS X 10.5 (Leopard) ではBootCamp Assistant が標準でインストールされています.今まではBootCamp AssistantによりWindowsのドライバCD-ROMを作成する必要がありましたが、LeopardではOSXのインストールDVDがハイブリッド形式で作成されていて、インストールDVD自体がWindows用のドライバインストーラーになるものと思われます.   BootCampのエラーメッセージ  BootCamp Assistant 自体は従来のベータ版とそれほど大きな違いは無いようです.従来同様シングルパーティション以外では使えないようになっています.     まず最初にBootCamp Assistant がどのようにハードディスクのパーティションを分割しているのか検証してみましょう.使用したBootCamp Assistant のバージョンは2.0で、OSは OS X 10.5 (Leopard Build 9A559) です.  BootCamp Assistantを使用可能にするため、手持ちの空きハードディスクをシングルパーティションに戻し、Leopardをインストールしておきます.ハードディスクのパーティションの状態をコマンドラインツールで表示してみます.   ER105:~ yasuaki$ sudo gpt show disk0 start size index contents 0 1 PMBR 1 1 Pri GPT header 2 32 Pri [...]

10

01

2007

MacでWin – BootCamp (その2)

Windowsをハードディスクから起動させるための条件    EFIのCMS機能によりレガシーなBIOSベースのOSをサポートすることが可能になりましたが、これらのOSをハードディスクから起動できるようにするには、ハードディスクのパーティション構造の違いが問題になります.    ご承知のように、EFI系のシステムでは GUIDパーティション(GPT)形式が用いられており、従来の IBM/PC系のパーティション構造とは大きく異なっています.当然ながらWindowsのようなBIOSベースのOSはGUIDパーティション(GPT)形式には対応できません.そこで、BIOSベースのOSからGUIDベースのハードディスクにアクセスする際に、あたかも従来の IBM/PC系のハードディスク構造であるかのように見せかける必要があります.このための仕組みが Protective MBR と呼ばれる仕組みで、ハードディスクのセクター0をレガシーなBIOSベースのOS用にMBRとして使えるようになっています.    MBR(Master Boot Record)そのものの構造についてはここでは詳しく述べませんが、詳細を知りたければネット上で検索を掛けると直ぐに見つかると思います.Nobusan’s Square : “http://nobumasa-web.hp.infoseek.co.jp/” というサイトに丁寧な記述がありますので、興味のある方はそちらのページをご覧になってください.(リンク切れ)   Windows XPの起動プロセス    MBRの問題に関してはGUIDパーティション側で解決されているので、特に意識しなくても問題は無さそうですが、WindowsのシステムパーティションをGUIDパーティションのどの位置に設けるのかが問題になりそうです.     Windowsの起動プロセスを簡単に追ってみましょう.    まず電源ONとともにBIOSが起動し、BIOSに設定されている起動ディスクの MBRを読み込む.MBRにはブートストラップローダーと呼ばれるOSを起動するための簡単なプログラムが記述されており、このブートストラップローダーがMBR上のパーティションテーブルを参照し、アクティブなパーティションを見つけ出す.この後ブートストラップローダーはアクティブパーティション上のブートセクタと呼ばれる領域に書き込まれている別なブートローダー(NTIPL)呼び出し制御を渡す.制御を渡されたNTIPLはさらに別なブートローダ(NTLDR)を呼び出す.NTLDRは”boot.ini”ファイルに記述されたWindows OSの情報を参照して、Windowsの起動を行っている.    このような複雑なプロセスを経てWindowsが起動される訳ですが、Windows用のFAT32/NTFSパーティションを先頭から4つ目以内に作成しておけば、ProtectiveMBR上のパーティションテーブルを通じてレガシーなBIOSベースのOSからでも目的のパーティションにアクセスすることが可能となる筈ですね.    EFIベースのマシンでWindowsなどのレガシーなBIOSベースのOSを動かす場合の問題点がある程度明らかになったので、次回は実際にIntelMac上にWindows XPをインストールして検証してみることにします.  

10

01

2007

MacでWin – BootCamp (その1)

BootCampについて    2006年1月のIntel Mac の発売と同年4月のAppleからBootCampのベータ版がリリースされ、Intel Mac上でWindowsを直接稼働させることが可能になり、実際にIntel Mac上でMac OS XとWindows XP(Vista)の両方をOSを使い分けている方も多いと思います.また、Parallels DesktopやVMWare Fusionなどの仮想デスクトップ環境もリリースされ、Intel Mac上でWindowsだけではなくLinuxやSolaris10などのOSも比較的容易に動かすことが可能になっています.    まもなくMac OS X 10.5 (Leopard) が正式にリリースされ、BootCampも正式にバンドルされることになりますので、いい機会ですのでMacでWindowsを動かす方法について検討してみようと思います.    2006年4月上旬にAppleから突然このツールがリリースされ巷は大騒ぎでしたが、このツール自体は単なるハードディスクパーティションの操作ツールに過ぎません.既存のハードディスクの領域をデータを消すことなく分割し新たにWindows用の(FAT32)パーティションを作成(逆に元のOSXのシングルパーティション状態に戻すこともできる)することと、Windows用の各種ドライバ類を書き込んだCD-ROMを作成する機能があります.    DOS/V系のマシンではPartitionMagicやAcronis Disk Director Suite などのハードディスクパーティションツールなどが広く一般に普及していて、ハードディスクの中身のデータを消すことなく比較的簡単にパーティション操作が行えました.Mac用でもiPartitionやDiskWarrior,Drive Geniusなどのハードディスクパーティションツールがありますが、まだ機能が貧弱だったり、使いにくいのが現状でしょうか.Apple標準のDiskUtilityもLeopard版からは限定的ではありますが、既存データを消さずにパーティションの分割、解放ができるようになるようです.    BootCampを使用してMac OS X とWindows XP(Vista) デュアルブートマシンを作ろうとするときに一番困るのは、BootCampがAppleの標準的なハードディスクのパーティション設定(見た目のパーティションが1つしかない状態)以外では使えないということです.Macのパワーユーザであればハードディスクを複数のパーティションに分けて使っている方も多いことと思います.Windowsをインストールするためにハードディスクのパーティションを元に戻してもう一度OS Xをインストールし直すなんて事はできれば避けたいところですよね.    実はBootCampを使わなくてもOS XとWindowsのデュアルブートを実現することは可能なのです.ここで Intel MacでWindowsが稼働するための条件を整理してみましょう.     ハードウェアの違い    Intel Macでは DOS/V機のようなBIOSは無く、EFI (Extensible Firmware Interface)が使われています.EFIについては別な機会に書くことがあるかもしれませんが、EFIは非常に高機能な最新のファームウェアで従来のBIOSと違い拡張性に富んでいます.残念ながらこのEFIに対応したハードウェアは64bit系のサーバなどごく一部で、大多数のハードウェアは未だにBIOSを用いているのが現状です.  OS側でも殆どのOSがBIOSを前提に作られていて、64bit系のサーバOSが対応している程度です.デスクトップOSの主流である32bit系のWindows XP, Vista [...]

10

01

2007

ブログ立ち上げました

ブログサイト “y2blog” を立ち上げました.現時点でまだ日本語化されていないことと、Internet Explorer に対応できていませんが、追々改良していくつもりです.