Я использую Process Hacker, чтобы очистить несколько гигабайт оперативной памяти перед загрузкой больших файлов, таких как трассировки стека по 2 ГБ, чтобы все не зависало на час, пока все переставляется туда-сюда. Однако Process Hacker очищает только около 200 МБ за раз.
Существуют ли какие-либо программы или API Windows, которые позволяют мне за один раз выгружать несколько гигабайт измененной памяти в файл подкачки?
решение1
Автор процесса хакера предоставляет исходный код. Посмотрите на исходный код, и вы увидите, что memlists.c предоставляет то, что вам нужно:
команда = MemoryFlushModifiedList;
статус = NtSetSystemInformation(SystemMemoryListInformation, &command, sizeof(SYSTEM_MEMORY_LIST_COMMAND));
Напишите простой инструмент CLI на языке C, который выполняет эту команду.
решение2
RAMКартаимеет опцию пустого списка измененных страниц.