仮想メモリ(ページファイル)に関する小技 をまとめてみた

1.ドライブを丸ごと圧縮したときに、 PAGEFILE.SYS が あまり圧縮できないし、いちいち消すの面倒だよ!

調べるとこんな記事があるのだけど
シャットダウン時に Windows ページング ファイルを消去する方法
[NT] シャットダウン時にページング ファイルを消去する方法

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
Memory Management

もし、この値が存在しない場合は、以下の値を追加してください。

値の名前 : ClearPageFileAtShutdown
データ タイプ : REG_DWORD
値 : 1

ClearPageFileAtShutdown: Core Services
Delete (Not clear) Pagefile at Shutdown. - Windows XP - MSFN Forum

って書いてるけど実はこの設定でファイルを消さずに 0クリアするだけらしい ・ω・
(つまり、シャットダウンの時にページファイルをセキュリティのため ゼロクリアするので遅くなる)
gpo
2000とXPは0クリアする場合グループポリシーで設定することもできる
デフォルトでは無効(クリアしない)。

ClearPageFileAtShutdownに関する情報の誤り - PC-ZERO Blog

ClearPageFileAtShutdownの値はシャットダウン時にページングファイルを削除するかどうかの値ではなく、ページングファイルの残存データのセキリュティに関するものであるとのご指摘がありました。

ClearPageFileAtShutdownで断片化は直りません、速くなりません – のろのろのろ雑記

記事を見る限り、確かにページングファイルの削除もされていませんし断片化も解消されていないようです。

Microsoft Technet ClearPageFileAtShutdown: Core Services
こちらのMicrosoft Technetの情報を見ても、ページングファイルを削除するという旨の記述はどこにもありません。

2.ページファイルが 4095Mまでしか作れない。1つのドライブにもっと割り当てたいよ!

Windows 2000 での 4,095 MB のページング ファイルのサイズ制限を解決する方法

 ページング ファイルを保持するドライブまたはボリュームで、そのボリュームに作成するページング ファイルの数のフォルダを作成します。たとえば、[C:\Pagefile1]、[C:\Pagefile2]、[C:\Pagefile3] です。
レジストリ エディタ (Regedt32.exe) を使用して、以下のキーを見つけます。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management
Pagingfiles 値を検索し、その値をダブルクリックしてオープンします。
既存の値をすべて削除し、以下の値を追加します。
c:\pagefile1\pagefile.sys 3000 4000
c:\pagefile2\pagefile.sys 3000 4000
c:\pagefile3\Pagefile.sys 3000 4000

Σ(・ω・ ) こんな裏技があったとはwww

3.しかし、大容量メモリを搭載してる時の理想的な仮想メモリのサイズは物理メモリx1.5ではなかった!?

Windows 2000 Advanced Server 完全解説
http://www.microsoft.com/Japan/windows2000/server/solutions/clustering/part2.asp

ハードウェア選定からインストール後の調整までを指南
Windows 2000 Advanced Server
インストール&アップグレード
導入に失敗しないためのポイント

アプリケーションメモリ調整とPAE x86は、Boot.iniで有効化

システムに4GB以上のメモリを搭載している場合は、EMA(Enterprise Memory Architecture)のメモリ拡張方式である「アプリケーションメモリ調整」や「PAE x86」、またはその両方を有効化することができる。有効化するには、Windows 2000 Advanced Serverのインストール完了後に、「Boot.ini」ファイル(通常、Cドライブのルートに存在する)を修正するだけでよい。

アプリケーションメモリ調整は、2GBから4GBのメモリを搭載したインテルベースのシステムで使用することができる。この機能を有効化するには、次の例のように「Boot.ini」ファイルのARCパスに「/3GB」スイッチを追加する。

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server" /fastdetect /3GB

PAE x86は、4GB以上、最大8GBまでのメモリを搭載したPentium Pro以上で、450NX互換のチップセットおよびサポートがあるシステムで使用することができる。この機能を有効化するには、次の例のように「Boot.ini」ファイルのARCパスに「/PAE」スイッチを追加する。

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server"/fastdetect/PAE

4GB以上のメモリを搭載している場合は、アプリケーションメモリ調整とPAE x86の両方を有効化できる。その場合は、ARCパスに「/3GB」スイッチと「/PAE」スイッチの両方を追加すればよい。ちなみに、PAE x86を有効化すると、システムのプロパティに「物理アドレス拡張」と表示される(画面4)。

アプリケーションメモリ調整を有効化した場合は、Windows 2000のカーネルが使用するメモリが抑えられ、大量のメモリを使うアプリケーションが最大3GBまでの仮想アドレス空間を利用できるようになる。ただし、アプリケーションが3GBの仮想アドレス空間を利用するためには、実行可能ファイルのイメージヘッダーに「IMAGE_FILE_LARGE_ADDRESS_AWARE」ビットが設定されている必要がある。

「IMAGE_FILE_LARGE_ADDRESS_AWARE」ビットが設定されて出荷されたアプリケーションは変更する必要はないが、そうでない場合は、「Imagecfg.exe」ツールを使って、イメージヘッダーを設定する必要がある。例えば、実行可能ファイル「Myapp.exe」のイメージヘッダーを設定するには、コマンドプロンプトで次のコマンドを実行する。Imagecfg.exe -l Myapp.exe「Imagecfg.exe」は、WindowsNT Server4.0あるいはWindowsNT Server, Enterprise Edition4.0のCD-ROM Disc2の「\Support\Debug\I386」フォルダに収録されている。残念ながら、Windows 2000 ServerファミリーのCD-ROMには収録されていない。
       

画面4:「Boot.ini」のARCパスに「/PAE」スイッチを追加してシステムを再起動すると、PAE x86が有効になり、最大8GBまでの大容量メモリが使用可能となる

   
大容量メモリ使用時のページングファイルサイズの調整

システムに4
GB以上のメモリを搭載している場合は、ページングファイルサイズを調整する必要がある。Windows 2000がデフォルトで自動設定するページングファイルサイズは、「物理メモリ+12MB」である。しかし、4GB以上のメモリを搭載している場合は、「物理メモリ+12MB」では大きすぎであり、ディスク領域をむだに消費することになる。

PAE x86を有効にすることで、アプリケーションのページングは大幅に減少するので、ページングファイルサイズはもっと小さくてよい。4GB以上メモリを搭載したシステムでは、推奨サイズは2,060MBである。Windows 2000では、システムエラー発生時にカーネルとアクティブなプロセスのデバッグ情報をメモリダンプ(Memory.dmp)に書き込むように構成することができるが、この場合でもページングファイルサイズは2,060MBで十分である。

Windows 2000 SP1では「Update.exe」が新しくなっており、統合モードで実行することで、ネットワーク共有上のWindows 2000のCDイメージにWindows 2000 SP1を直接適用することができる。Windows 2000 SP1を適用したCDイメージを使用して、Windows 2000をインストールすると、Windows 2000 SP1が適用済みのWindows 2000を導入することができる。

Windows 2000 Advanced Server用のSP1適用済みインストールイメージを作成するには、まず、適当な共有フォルダを用意し、そのフォルダにWindows 2000 Advanced ServerのCD-ROMの内容をすべてコピーする。次に、Windows 2000 SP1のCD-ROMから「Update.exe」を「-s」オプション付き(統合モード)で実行する。Windows 2000 SP1のCD-ROMをセットしたのがEドライブで、Windows 2000 Advanced ServerのCDイメージをコピーしたのが「F:\Win2kas」フォルダだとすると、コマンドラインは次のようになる。

D:\I386\Update\Update.exe -s:F:\Win2kas

仮想メモリは PAE x86を有効にした 4G以上のメモリを搭載したシステムでは 2060Mで十分である。

Σ(・ω・ ) Σ(・ω・ ) Σ(・ω・ )  な、なんだってー!!!

4.ページファイルの設定ツールが XP以降には入ってて。実はWindows 2000でも使える。

Windows 2000で コマンドプロセッサライブラリを使用する
まぁ、これは過去記事参考に・ω・

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です