Windows Server 2003 および Windows 2000 では、大規模なメモリのサポートを利用できます

この記事では、物理アドレス拡張 (PAE) とアドレス ウィンドウ拡張機能 (AWE) について説明し、それらが連携する方法について説明します。 この記事では、32 ビット オペレーティング システムに固有の 4 ギガバイト (GB) の範囲を超えるメモリの使用に関する制限事項についても説明します。

適用対象: Windows Server 2003
元の KB 番号: 283037

詳細情報

PAE は、4 GB を超える物理メモリに対処するための IA32 プロセッサの追加機能です。 次のオペレーティング システムでは、PAE を使用して、4 GB を超える物理メモリを利用できます。

  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows Server 2003、Enterprise Edition
  • Microsoft Windows Server 2003 Datacenter Edition

PAE を有効にするには、Boot.ini ファイルで /PAE スイッチを使用します。

注:

Windows Server 2003 では、サーバーがホット追加メモリ デバイスを使用している場合にのみ、PAE が自動的に有効になります。 この場合、ホット追加メモリ デバイスを使用するように構成されているシステムで /PAE スイッチを使用する必要はありません。 それ以外の場合は、Boot.ini ファイルの /PAE スイッチを使用して、4 GB を超えるメモリを利用する必要があります。

通常、Windows 2000 または Windows Server 2003 で実行されているプロセスは、最大 2 GB のメモリ アドレス空間にアクセスできます (/3 GB スイッチが使用されていないと想定)。 実行するプログラム (およびプロセスが多く) が多いほど、最大 2 GB のアドレス空間にコミットするメモリが増えます。

この状況が発生すると、ページング プロセスが大幅に増加し、パフォーマンスに悪影響を及ぼす可能性があります。 Windows 2000 および Windows Server 2003 メモリ マネージャーは、PAE を使用して、より多くの物理メモリをプログラムに提供します。 これにより、ページ ファイルのメモリを交換する必要が減り、パフォーマンスが向上します。 プログラム自体は、実際のメモリ サイズを認識していません。 PAE メモリのすべてのメモリ管理と割り当ては、実行するプログラムとは独立してメモリ マネージャーによって処理されます。

上記の情報は、/3 GB スイッチが使用されるときに実行されるプログラムに対して有効です。 3 GB のメモリを要求するプログラムでは、ページアウトされるよりも多くのメモリを物理メモリに残すことができる可能性が高くなります。これにより、/3 GB スイッチを使用できるプログラムのパフォーマンスが向上します。 例外は、/3 GB スイッチを /PAE スイッチと組み合わせて使用する場合です。 この場合、オペレーティング システムは 16 GB を超えるメモリを使用しません。 この動作は、カーネル仮想メモリ領域に関する考慮事項によって発生します。 したがって、Boot.ini ファイル内の /3 GB エントリを使用してシステムが再起動し、システムに 16 GB を超える物理メモリがある場合、オペレーティング システムでは追加の物理ランダム アクセス メモリ (RAM) は使用されません。 /3 GB スイッチを使用せずにコンピューターを再起動すると、すべての物理メモリを使用できるようになります。

AWE は、プログラムが標準の 32 ビット アドレス指定で使用できる 4 GB を超えるメモリに対処できるようにする、メモリ マネージャー関数へのアプリケーション プログラミング インターフェイス (API) のセットです。 AWE を使用すると、プログラムは物理メモリを非ページング メモリとして予約し、ページ化されていないメモリの一部をプログラムのワーキング セットのメモリに動的にマップできます。 このプロセスにより、大規模なデータベース システムなどのメモリ集中型プログラムは、使用のためにページング ファイルにページングしたり、ページング ファイルからページングしたりしなくても、大量の物理メモリをデータ用に予約できます。 代わりに、データはワーキング セットの内外でスワップされ、予約メモリは 4 GB の範囲を超えています。 さらに、4 GB を超えるメモリの範囲は、PAE によってメモリ マネージャーと AWE 関数に公開されます。 PAE がない場合、AWE は 4 GB を超えるメモリを予約できません。

PAE スイッチが追加されたBoot.ini ファイルの例を次に示します。

[boot loader]  
timeout=30  
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS  
[operating systems]  
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect /PAE  

警告

Boot.ini ファイルの内容は、構成によって異なります。

要約すると、PAE は Windows 2000 および Windows Server 2003 メモリ マネージャーの関数であり、メモリを要求するプログラムにより多くの物理メモリを提供します。 プログラムは、要求されたメモリが実際にページ ファイル内にあることをプログラムが認識していないのと同様に、使用するメモリが 4 GB を超える範囲に存在することを認識していません。

AWE は、プログラムがメモリの大きなチャンクを予約できるようにする API セットです。 予約メモリはページング不可であり、そのプログラムでのみアクセスできます。

システムにメモリを追加すると、BIOS はサーバーにインストールされている物理 RAM の完全な量を認識しますが、Windows では RAM の一部のみが認識される可能性があります。 サーバーに冗長メモリ機能またはメモリ ミラーリング機能が有効になっている場合、メモリの完全な補完が Windows に表示されない可能性があります。 冗長メモリは、メモリ バンクに障害が発生した場合にフェールオーバー メモリ バンクをシステムに提供します。 メモリ ミラーリングでは、メモリ バンクがミラー化されたセットに分割されます。 どちらの機能も BIOS で有効または無効になっており、Windows 経由ではアクセスできません。 これらの機能の設定を変更するには、システム ユーザー マニュアルまたは OEM Web サイトを参照する必要があります。 または、ハードウェア ベンダーに問い合わせる必要がある場合もあります。

たとえば、4 GB の RAM がインストールされているシステムを実行していて、4 GB の RAM を追加した場合、Windows では、完全な 8 GB ではなく 4 GB の物理メモリまたは場合によっては 6 GB しか認識されない可能性があります。 冗長メモリ機能またはメモリ ミラーリング機能は、知識がなくても新しいメモリ バンクで有効にできます。 これらの現象は、/PAE スイッチをBoot.ini ファイルに追加しない場合に発生する現象と似ています。