|
仮想メモリとページファイル
Windowsには古くから物理メモリ(physical memory)と仮想メモリ(virtual memory)を取得する関数があり、大抵のフリーウェアなどのメモリ監視ツール等はこれを参照しています。 が、これのうち、仮想メモリに該当する部分は、勘違いされやすいですが、ページファイルの利用量(%)のことではありません。
この旧関数の仮想メモリが指し示すものは、後のOSではコミットとよばれる、予約済みのメモリー領域の量の事で、シルメラでも昔はこの数値をページファイルとして扱っていた事がありました。
現在のシルメラでは、ページファイルは物理的なページファイルに指定されているファイルのパスを取得し、ファイルサイズを確認、割合を計算するという方式で、HDD内の埋まっているメモリ量を示します。 なので、シルメラのページファイルは、物理的なHDD内のページファイルの利用量(率)であり、仮想メモリ(コミット)とは全く異なります。
コミットとは別に、Commitチェックを外す事により、コミット値から物理メモリ使用量を引き算した数値を出すモードにする事ができますが、この数値は実際のPC上のリソース配分とはあまり関係のない数値であり、要望により残されている暫定機能です。 このCommit無しモードは負の数になりえます。たとえば126,570-k など、最後にマイナスがついている場合は負の数です。これは、物理メモリの使用量とページファイルの使用率が、コミット値(利用予約領域)より高い場合に発生します。
また、64bit OSで、主に8G以上の物理メモリを積んでいる場合、ページファイルがなかなか使用量0から変わらないことがありますが、これは正常です。 WindowsはXP以降になると、できるかぎりスワップアウト(HDD押し出し)を行わない構造になっているため、スワップファイル使用を前提としたアプリを利用するか、数日使ったり、大量にアプリを起動するなどすると動くと思います。 ただ、やはりスワップファイルを全く使わないという事ではないので、32GBのメモリを積んだ機体でのテストでも50日間の運用で3Gほどのページファイルが使用されています。物理メモリに余裕があってもです。
なので、コミット(予約済みメモリ量)が知りたいなら、仮想メモリのCommitチェック。 ページファイルの物理的使用量が知りたいならページファイルを表示して参照して下さい。
|