ユーザーが大量の RAM を使い果たしたときに現れると思われるバグを再現しようとしています。コンピューターが使用できる RAM を制限する、またはそのほとんどをいっぱいにする最善の方法は何ですか? 私は、メモリを物理的に取り外さずに、メモリを大量に消費する任意のプログラム (Photoshop、Quake など) を実行せずに、これを行うことを好みます。
5 に答える
仮想マシンを使用してリソース制限を設定し、必要な条件をエミュレートします。
VMWare はこの分野のリーダーの 1 つであり、これを可能にする無料の vmware プレーヤーがあります。
同様の質問からの回答をコピーしています:
ネイティブ/アンマネージ/C++ アプリケーションをテストする場合は、AppVerifierを使用できます。これは、メモリ割り当てのエラーをシミュレートするためにフォールト インジェクションを使用する低リソース シミュレーション設定です (他の多くのものの中でも)。また、アプリケーションのクラッシュにつながることが多い他の多くの微妙な問題を見つけるのにも非常に役立ちます。
また、Windows 7 用の Microsoft Windows SDK および .NET Framework 3.5 Service Pack 1の一部である consumer.exe を使用して、大量のメモリ、ディスク領域、CPU 時間、ページ ファイル、またはカーネル プールを簡単に使用して確認することもできます。アプリケーションが利用可能なリソースの不足をどのように処理するか。(クラッシュしますか?パフォーマンスにどのような影響がありますか?など)
ジョブ オブジェクトまたはのいずれかを使用しますulimit(1)
。
仮想マシンを作成し、RAM を必要なものに設定します。
私が使用しているのは、SUN の Virtual Box です。
セットアップは簡単です。
Java で開発している場合は、起動時に JVM のメモリ制限を設定できます。