最適なページ・ファイル・サイズを知るには − @IT
[System Environment] | ||||||||||
最適なページ・ファイル・サイズを知るには
| ||||||||||
周知のとおり、Windows 2000/Windows XPには仮想メモリ・システムが搭載されており、PCに物理的に搭載したメモリ・サイズを大きく超えた仮想メモリ空間を利用して、多数のアプリケーションを同時実行することができる。この仮想メモリ・システムは、ハードディスクの一部を、あたかも物理メモリの一部であるかのようにして使用し、仮想的なメモリ空間を作り上げる技術である。Windows 2000/Windows XPは、現在メモリにロードされているプログラム・コードやデータのうち、当面使いそうもない部分をハードディスク上に用意したファイルに一時的に待避して、それらが占有していたメモリ領域を解放する。こうして一時待避したデータが再度必要になった場合には、逆にディスクからメモリにロードし直す(このとき必要なら、別のメモリ領域をディスクに一時待避する)。
ノートパソコンが良いかどうかはどのように知っている
仮想メモリ・システムにおける、この物理メモリ←→ディスク・ファイル間のデータ交換はスワップ(swap。「交換する」の意)と呼ばれ、特に物理メモリからディスクへのデータの書き出しはスワップ・アウト(swap out)、逆にディスクからメモリへのデータの再読み込みはスワップ・イン(swap in)と呼ばれる。PCが搭載するIntel x86プロセッサには、仮想メモリ・システムを構築するために、プロセッサ自身にページング(paging)と呼ばれる機能が備えられている。このページング機能は、物理メモリを4Kbytes単位のブロックに分け(この1つのブロックを「ページ」と呼ぶ)、ページ単位にスワップを行う。
Windows 2000/Windows XPは、スワップ用のファイル(以下ページ・ファイル)として、ハードディスクのルート・ディレクトリ上に「pagefile.sys」というファイルを作成する。ただしこのファイルには「隠しファイル」属性が付けられているので、エクスプローラの[フォルダ オプション]の[表示]タブ−[ファイルとフォルダの表示]を[すべてのファイルとフォルダを表示する]に変更しなければディレクトリ一覧には表示されない。なおWindows 2000/Windows XPでは、複数のドライブにページ・ファイルを配置し、これらを同時に利用できるようになっている(デフォルトでは、Windows 2000/Windows XPがインストールされている起動ドライブが使用される)。
なぜ私のXPの凍結はしない
普段、仮想メモリをどのくらい使っているかを知るには
Windows 2000/Windows XPでは、デフォルトで搭載物理メモリの1.5倍のサイズのページ・ファイルが作成される。従って例えば、システムに搭載されている物理メモリが128Mbytesなら192Mbytes、256Mbytesなら384Mbytesのページ・ファイルが作成される。単純計算では、物理メモリとページ・ファイルを加えた容量が使用可能な仮想メモリ・サイズになるので、デフォルトでは物理メモリの250%(2.5倍)までの仮想メモリが使用可能ということになる。そして、大量の仮想メモリが必要となり、実行時にページ・ファイルが足りなくなったときには、ダイナミックにページ・ファイルのサイズが拡大されるようになっている。ただしシステムで使用する仮想メモリ・サイズがおおよそ分かっているなら、ページ・ファイル・サイズを固定してしまったほうが効率がよい(TIPS「� ��ージ・ファイルによるディスクのフラグメントを防止する方法」参照)。
システムで必要となる仮想メモリ・サイズを知りたければ、タスク・マネージャの[パフォーマンス]タブに表示される値を確認すればよい。タスク・マネージャを起動するには、[Ctrl]+[Shift]+[ESC]キーを押すか、タスク・バーの空き領域でマウスを右クリックし、表示されるショートカット・メニューの[タスク マネージャ]を実行するか、[Ctrl]+[Alt]+[Del]キーを押して表示されるダイアログの[タスク マネージャ]ボタンをクリックする。
どのようにバージョン1.50への私のPSPをダウングレードする
システムの仮想メモリの使用状況を知るには、[タスク マネージャ]−[パフォーマンス]タブの左下にある[コミット チャージ]グループに注目する。このグループに表示されている[合計]、[制限値]、[最大値]の値は、それぞれ現在実行されているすべてのプロセスが使用している仮想メモリの総計、ページ・ファイルを拡張することなく割り当て可能な最大仮想メモリ・サイズ(物理メモリと「現在の」ページ・ファイル・サイズの合計)、現在までの仮想メモリ・サイズ([合計]の履歴)のピーク値をKbytes単位で表したものである。たとえば画面の例なら、[合計]の値は約275Mbytes、[制限値]は約619Mbytes、[最大値]の値は約276Mbytesということになる。ページ・ファイルの最大サイズは、(デフォルトでは)物理メモリの3倍までに設定されているので、この例では[制限値]の値は最大1Gbytesまで拡大される可能性がある。
今述べたとおり、[最大値]の値は、Windows 2000/Windows XPシステムを起動してから、これまでの間に使用された仮想メモリ・サイズのピーク値である。つまり、システム起動からこれまでに、日常的な操作をひととおり行った後だとすれば、この[最大値]の値が、システムで必要な仮想メモリ容量ということになる。厳密には、できるだけ長期にわたって使用仮想メモリ容量のログなどをとって判断すべきだが(タスク マネージャではこのようなログはとれないが、コントロール パネルの[管理ツール]フォルダ−[コンピュータの管理]アプレットの[パフォーマンス ログと警告]を利用すればこれが可能である)、簡易には、システムを起動してから、日常的な操作をひととおり行ってみて(同時に利用する可能性があるアプリケーションなどは同時に実行する)、その後この[最大値]の値を調べてみるとよい。TIPS「必要メモリ・サイズを見極める」も参考にしていただきたい。
必要な仮想メモリ容量が分かったら、システムの搭載物理メモリとその値を比較してみよう。物理メモリ量をはるかに超える仮想メモリを使っているなら、オーバーヘッドの大きなスワップが頻繁に発生している可能性がある。そのような場合には、物理メモリの増設などを検討する必要があるだろう。Windows 2000/Windows XPのデフォルト設定では、ページ・ファイル・サイズの最大値は物理メモリ・サイズの1.5倍〜3倍まで可変となっているが、現実的には数百Mbytesものスワップが発生するような環境では、著しくパフォーマンスが低下することになるだろう。搭載可能な最大メモリ容量が数十M〜100Mbytes程度しかなかった古い時代のマシンならともかく、現在では、ページ・ファイル・サイズは物理メモリと同じくらいか、最大でも2倍くらいまでに収まるように物理メモリを増設することが望ましい。
|
更新履歴 | |
|
TechTargetジャパン
Windows Server Insider フォーラム 新着記事
0 コメント:
コメントを投稿