web-dev-qa-db-ja.com

Windows Server 2008 R2で使用されているメモリを解放する方法

タスクマネージャーとリソースモニターは、メモリが95%使用されていると言いますが、リストされたプロセスで使用されるメモリの合計は、合計で20%にはなりません。この使用率の75%はどこから来ているのですか?それを解放するには?

編集:おそらくメモリリークでしたが、再起動で解決しました。これはメモリリークの唯一の解決策ですか?

2
Jader Dias

これは、アプリケーションからのメモリリークである可能性があります。再起動後はどうなりますか? 95%にゆっくり戻りますか?

1
Dave M

これはディスクキャッシュですか?オペレーティングシステムはメモリの処理方法を認識しており、通常はそれで十分です。

4
elcuco

Windows 2008は、他のWindowsシステムとは異なるメモリ処理を備えています。アプリケーションが FILE_FLAG_RANDOM_ACCESS を設定すると、ファイル全体がRAMに保持されますが、他のアプリケーションを犠牲にすることもあります。

Sysinternalsの RamMap を使用して、そのことを確認できます。 「アクティブ」状態の「マップされたファイル」を探します。メニューの「Empty→Empty System Working Set」オプションを使用してそれを解放できるはずです。

1
Hubert Kario

(MSサイトから)プロセスエクスプローラーをインストールし、ファイルキャッシュのワーキングセットを確認します。

他にメモリを使用していない場合、Windowsはそれをキャッシュに使用します。未使用ですので。

パフォーマンスについて心配している場合は、メモリオーバーコミットのはるかに優れたインジケータとしてページヒットを確認してください。

1
Ben