多くの人々は、Microsoftのホワイトペーパーなどを読むことで、Windowsメモリマネージャーのキャッシュがどのように機能するかについて教育を受けています。
サーバーとして機能するWin7 64ビット(8Gb RAM)PCがあります。これ以上メモリを追加できません。多数のTVチューナーがあり、複数の巨大なmpeg2ファイル(少なくとも3〜8 GB)を同時に24時間HDDに記録/書き込みします。PCがテレビ番組を録画している時間に応じて、1〜3日後にPCが遅くなります。
Windowsタスクマネージャーを見ると、大規模なアプリケーションをあまり開いていないようです。そして、たくさんの「利用可能なメモリ」。アクティブなプロセスをすべて閉じても、PCの動作は遅くなりません。ただし、RamMapを使用すると、これらの大きなmpeg2ファイルがアクティブスタンバイリストでマップされたファイルになることがわかります。時間が経つにつれて、私のPCは非常に遅くなります。RamMapで「空のスタンバイリスト」を選択すると、PCはすぐに非常に応答しやすくなります。私はちょうどそれを再起動したかのように。停滞に対処するために私ができることは他にありません。実際、スタンバイリストを空にするか再起動しない限り、PCがこの低迷から回復することはありません。
EmptyStandbyList.exeというコマンドラインユーティリティがあり、RamMapのGUIでスタンバイリストを削除する代わりに、スタンバイリストを静かに削除します。ただし、残念ながら、スタンバイリストに残っているパフォーマンス上の目的で非常に役立つスタンバイリスト内の小さな項目も削除されます。
Googleで検索しているときに、私とまったく同じ問題を抱えている他の人を見つけました。しかし、彼らの質問のほとんどは答えられていません。これがなぜ起こるかについての本当の説明なし; また、「空のスタンバイリスト」テクニック以外の問題を修正する決定的な方法はありません。
「ダイナミックキャッシュ」と呼ばれるMSユーティリティ/サービスの言及を見てきました。しかし、私が望むものを具体的に治すかどうかはわかりません。また、Win7 / Win2008 R2バージョンは、MSサポート経由でのみ利用できるようです。「最小/最大NTキャッシュ制限」を設定するユーティリティもいくつか見ました。しかし、これらはスタンバイリストではなく、プロセスのワーキングセットに固有のように見えます。
ボックスの外側を考えることができる誰かが、定期的にスタンバイリスト全体を残酷に空にする代わりに、私にとってより優雅な治療法を考えることができることを望んでいます。そして、願わくば、私(および他の人々)が見ている症状についての明確な説明があります。「すぐに使える」と言った理由は、マップされたファイルとスタンバイリストの優先順位が紙上で「どうあるべきか」を唱えるだけの人がすでにたくさんいるからです。これは私にはあまり役に立ちません。