Мы также столкнулись с этой проблемой на Windows Server 2008 R2 в нашей компании. В нашем случае машина застряла полностью. Кажется, это ошибка в этой серверной версии Windows, потому что она не возникала при тех же обстоятельствах ни на моей гораздо меньшей машине с Windows 7, работающей в VirtualBox, ни в Linux.
Вы можете установить кеш на определенный предел с помощью API, как уже опубликовали другие, но вы можете найти приложения, которые будут использовать его напрямую, такие как SetSystemFileCacheSize.exe или NT Cache Setter .
Недостатком является то, что вам нужно устанавливать кэш после каждой перезагрузки. Вы также можете очистить весь кэш за один раз.
Мы установили файловый кеш на нашей виртуальной машине, имеющей 14 ГБ ОЗУ, до 4 ГБ, и это работает. Также хорошо работает flush, и вы можете увидеть это прямо в диспетчере задач.
Образцы командной строки:
Показать текущие настройки Windows:
SetSystemFileCacheSize.exe
Показать справку:
SetSystemFileCacheSize.exe /?
Установите минимальный размер 8 МБ, а максимальный - 128 МБ:
SetSystemFileCacheSize.exe 8 128
Отключите минимальный размер и установите максимальный размер 128 МБ:
SetSystemFileCacheSize.exe off 128
Отключить минимальный и максимальный размер:
SetSystemFileCacheSize.exe off off
Очистить кэш файлов:
SetSystemFileCacheSize.exe flush
Примечание. Инструмент должен быть запущен с правами администратора.