Windows 2000/XPで128GB超のHDDを使う

 Windows 2000/XPで128GB (1K=1000で計算すると約137GB) を超える容量のIDEハードディスク (BigDrive) への対応状況はかなり複雑なものになっています。ここでは何が可能で何が必要かを纏めます。基本的に、BIOS、HDD、OSの3つがうまく対応していないと、不具合が出てしまいます。
 OSについては、Windows 2000の場合、SP2まではBigDriveに対応していませんので、128GB以上を利用することはできません。SP3以降ではBigDriveに対応していますが、実際に128GB以上を利用するためにはレジストリの編集が必要になります。レジストリの編集には次の操作を行います。

1) [スタート] メニューから [ファイル名を指定して実行] をクリックします。

2) 「regedit」と入力して [OK] をクリックします。

3) 「HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Atapi\Parameters」に移動します。

4) [編集] メニューの [新規] → [DWORD値] をクリックします。

5) 新しい値として「EnableBigLba」を入力します。

6) [EnableBigLba] をダブルクリックし、値のデータとして「1」を入力します (画面)。



7) [OK] をクリックし、レジストリエディタを終了すると、128GB超サポートが有効になります。

直接レジストリを編集するのが不安であれば、下記の4行をメモ帳に貼り付けて、適当な名前で、ただし拡張子は ".reg" として (例えばbigdrv.reg) 保存してから、そのファイルをエクスプローラでダブルクリックすることでレジストリに書き込まれます。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\atapi\Parameters]
"EnableBigLba"=dword:00000001


 これで137GBを超える領域にアクセスできるようになります。ただし、BIOSがBigDriveに対応していない場合は、Windows 2000を128GBを超える領域にインストールすることはできません。BIOSが128GB超に対応していない場合でも、ほとんどの場合、Windows 2000上からは128GBを超える領域にアクセス可能ですが、CompaqのPCなどの一部のBIOSでは128GB超のHDDから (128GB以内にWindows 2000をインストールしていても) Windows 2000が起動できない場合もあります。その場合は、BIOSをアップデートするか、128GB超に対応した拡張ATA/SATAカードにHDDを繋ぐしかありません (Windows XPについても同様)。
 Windows XPでSPなしの場合は、Windows 2000 SP3以降と同様のレジストリ編集が必要です。しかし128GBの領域にアクセスすると、まれにデータの破壊が起きることがあるようですので、レジストリの編集は避けて、SPを適用したほうがよいでしょう。
 Windows XPでSP1 (またはSP1a) を適用している場合は、BIOSがBigDriveに対応しており128GB超のHDDを使っている場合、BigDriveサポートが自動的に有効になります。ただし、BIOSがBigDriveに対応していない場合は、Windows XPを128GBを超える領域にインストールすることはできません。その場合でもたいていはWindows XP上からは128GBを超える領域にアクセス可能です。
 なお、Windows XP SP1では、休止やスタンバイ時のHDD書き込み、STOPエラーの発生に伴うメモリダンプファイルの書き込みがBigDriveに対応していないため、HDDが破損することがあります。この不具合はSP2で修正されていますので、Windows XPの場合は、SP2を適用することが最善です。ただし、SP2を適用しても、BIOSがBigDriveに対応していない場合は、Windows XPを128GBを超える領域にインストールすることはできません。その場合でもたいていはWindows XP上からは128GBを超える領域にアクセス可能です。