Как ограничить RAM для тестирования ситуаций с низкой памятью?
Я пытаюсь воспроизвести ошибку, которая появляется, когда пользователь использует кучу оперативной памяти. Каков наилучший способ ограничить доступную ОЗУ, которую может использовать компьютер, или заполнить большую ее часть? Я бы предпочел сделать это без физического удаления памяти и без запуска кучки произвольных, интенсивных для памяти программ (например, Photoshop, Quake и т. д.).
5 ответов
используйте виртуальную машину и установите на ней ограничения ресурсов для эмуляции необходимых условий.
VMware является одним из лидеров в этой сфере и у них есть бесплатный vmware player это позволяет вам сделать это.
я копирую мой ответ: из аналогичного вопроса:
Если вы тестируете родное/неуправляемое приложение / c++, вы можете использовать AppVerifier и это низкая настройка моделирования ресурсов, которая будет использовать инъекцию ошибок для имитации ошибок в распределении памяти (среди многих других вещей). Это также очень полезно найти массу других тонких проблем, которые часто приводят к сбоям приложений.
вы также можете использовать consume.exe, который является частью Microsoft Windows SDK для Windows 7 и .NET Framework 3.5 пакет обновления 1 чтобы легко использовать много памяти, дискового пространства, времени процессора, файла страницы или пула ядра и посмотреть, как ваше приложение обрабатывает отсутствие доступных ресурсов. (Он разбивается? Как влияет на производительность? так далее.)
создайте виртуальную машину и установите ОЗУ на то, что вам нужно.
тот, который я использую, - это виртуальная коробка от SUN.
легко настроить.