PAE

メモリを調査する場合、PAE(Physical Address Extension: 物理アドレス拡張)が有効になっているかを確認する必要があります。PAEはインテルが実装したアドレス空間の拡張機能で、物理アドレス空間を32ビット(4GB)から36ビット(64GB)にすることができます。つまり、PAEは物理メモリを4GB以上搭載したときに有効性を発揮します。

Windows上でPAEが機能しているかは、[コントロールパネル]-[システム]-[全般]の[コンピュータ]の項目に「物理アドレス拡張」という表示があるかで確認できます。PAEの有効、無効は、boot.iniファイルのディスクを指定している行の末尾に/PAE、/NOPAEオプションを追加して再起動することにより変更されます。なお、XP SP2や2003ではDEP(Data Execution Prevention: データ実行防止機能)と連動しており、特定のプロセッサを載せているとデフォルトで有効になります。

Linux上でPAEが機能しているかは、/proc/cpuinfoのflags行にpaeという表示があるかで確認できます。カーネルのビルド時にオプションを有効にすることでPAEは機能するため、有効、無効それぞれのオプションビルドしたカーネルを用意しておくことにより切り替えられます。

PAEの有無でメモリレイアウトや仮想アドレスとの変換が変更されるため、物理メモリを解析する場合はPAEの有無を考慮しなければなりません。ここでは基本的にPAEは無効の状態であることを前提にする予定です。