web-dev-qa-db-ja.com

Windowsのメモリ不足の警告の感度を下げるにはどうすればよいですか?

この迷惑なメモリ不足の警告/プレイするゲームを閉じるように求めるプロンプトが表示され続けます。それは非常に頻繁に発生し、私はまだ6 GBのRAMを解放しています。仮想メモリを無効にしたのは、10ギガの空きRAMがあるときにページファイルにデータを配置していたため、ディスク使用量が急増したためです。

この警告を無効にする方法はありますか? 16GBのRAMを持っているので、問題にはなりません。私のHDは非常に大きいので、ページファイルをオフにしておくことをお勧めします。

完全に無効にしたくありません。理想的には、6ではなく〜2GB残ったときにオフにしたいのですが、これが実行可能でない場合は、完全に無効にすることができます。

8
Stephen Smith

スコットの答えを要約すると、実際にはシステムが不足しているために使用可能なメモリが不足しているため、メモリ不足の警告が表示されます大きなメモリ要求を吸収する仮想メモリ。プログラムは、実際には一度に使用せずに、大量のメモリを割り当てる場合があります。

この警告はWindowsに組み込まれているため、無効にする方法はありません。ただし、なんらかのレジストリハックが存在する可能性を否定するつもりはありません。

編集: これ 回答が役立つ場合があります。

5
Bigbio2002

ページファイルを無効にしないでください。それを1024の最小値と2048MBの最大値に設定すると、このメッセージは再度表示されなくなります。

3
magicandre1981

Windowsでは、プログラムがメモリを使用する予定がない場合でも、プログラムにメモリ(仮想アドレススペース)の割り当てを要求できます。これにより、プログラムは後でメモリを使用できるようになり、コードのタイムクリティカルな部分で余分な時間を費やして、コードが使用可能かどうかを確認する必要がなくなります。

Windowsはメモリをオーバーコミットしないので、10MBのRAMがあり、1つのプログラムが5MBを要求します(ただし、2MBのみを使用します)と2番目のプログラムが6MBを要求します。 2番目のプログラムの場合、両方のプログラムが割り当てをすべて使用したい場合、メモリが利用可能であるかどうかを保証できないためです。

十分なスペースがなくてもリクエストを割り当てることができる場合は、スペースがないメモリに書き込もうとするプログラムをクラッシュさせるか、スペースを確保するために別のプログラムを強制終了する必要があります。 (Linuxは、/proc/sys/vm/overcommit_memoryを介してメモリを許可する場合、メモリのオーバーコミットを許可し、「 別のプログラムを強制終了 」のアプローチに従って、実行できないメモリ書き込みを検出します)

ページファイルがあり、プログラムが5MBを要求した場合(ただし2MBしか使用しない)、実際に使用している2MBのメモリをRAMに配置し、他の3MBをページファイルに割り当てます。これは単なる「割り当て」であり、まだ書き込みも読み取りも行われていないため、IOは実行されず、ドライブの速度は重要ではありません。2番目のプログラムが実行され、6MBが要求されたときそれでも、要求を満たすために利用できる十分なスペースが残っています。

さて、あなたの状況に移りましょう。まず、使用されているRAMの量を確認する場合、「ワーキングセット」または「コミットサイズ」を確認します。前の例で見た「2MBのみを使用する」という「ワーキングセット」、「コミットサイズ」は、上記で要求した「5MB」になります。

ページファイルがない場合、「コミットサイズ」の合計はシステムの合計RAMよりも小さくなければなりません。ページファイルのあるシステムの場合、コミットサイズの合計は、システムの合計RAM +ページファイルサイズまでです。

タスクマネージャーが「ワーキングセット」の合計を表示する場合、使用可能なramを確認したとき、またはページファイルがないときに「コミットサイズ」の合計に切り替わるかどうかはわかりません。あなたが思っているよりもずっと限界に近づいている。

2ビットプログラムは最大2 GBの仮想アドレス空間を割り当てることができ、64ビットプログラムは最大7つを割り当てることができますTB for self 。ウィンドウが設計されており、ページファイルを使用するように長年にわたって調整されているため、アドレススペースの非常に大きなチャンクを占めます。総容量の66%に達したときにユーザーに警告を表示するのは非常に合理的です。

多くの人々がページファイルなしでより良いパフォーマンスを得ると想定していることを知っています。これはWindows 98の時代には真実でしたが、多くの点が変更され、メモリ管理が大幅に改善されました。質問では、ディスク使用率が高いためにページファイルを無効にしたと述べていますが、ディスク使用量をどのように測定し、それがページファイルに送信されたことをどのようにしてわかりましたか非常に大量のIOがまだある場合で、まだramがたくさんある場合は、別の問題を示している可能性があり、解決できる可能性があります。

2