Многие люди знают, как работает кэширование диспетчера памяти Windows, читая официальные документы Microsoft и т.д. Однако имеется относительно немного документов, в которых описываются реальные проблемы с производительностью (медлительность), связанные с очень большими / растущими сопоставленными файлами и резервными списками.
У меня есть Win7 64bit (8Gb RAM) ПК, который выступает в качестве сервера. Я не могу добавить больше памяти к нему. Он имеет множество ТВ-тюнеров, которые записывают / записывают несколько гигантских файлов mpeg2 (по крайней мере 3-8 ГБ каждый) на жесткий диск 24/7. В зависимости от того, насколько мой компьютер записывает телепередачи, через 1-3 дня мой компьютер становится вялым.
Глядя на диспетчер задач Windows, кажется, что у меня не так много открытых приложений; и много "доступной памяти". Даже если я закрою все активные процессы, компьютер останется вялым. Однако при использовании RamMap я вижу, что эти большие файлы mpeg2 становятся сопоставленными файлами в активном резервном списке; что со временем делает мой компьютер очень вялым. Если я выберу "Пустой список ожидания" в RamMap, мой компьютер сразу станет очень отзывчивым; как будто я просто перезагрузил его. Я ничего не могу поделать с медлительностью. На самом деле, ПК никогда не оправится от этой медлительности, если я не опустошу список ожидания или не перезагрузлюсь.
У меня есть утилита командной строки, EmptyStandbyList.exe, которая, как я обнаружил, тихо очищает резервный список вместо того, чтобы делать это в графическом интерфейсе RamMap. Однако, к сожалению, он также удаляет мелкие элементы в резервном списке, которые очень полезны для повышения производительности, чтобы оставаться в резервном списке.
При поиске в Google я нашел других людей, у которых точно такая же проблема, как и у меня. Однако большинство их вопросов остаются без ответа; без реального объяснения того, почему это происходит; и нет определенного способа решения проблемы, кроме метода "Пустой резервный список".
Я видел упоминания об утилите / сервисе MS под названием "Dynamic Cache"; но не уверен, что это лечит именно то, что я хочу. Кроме того, версия Win7 / Win2008 R2, кажется, доступна только через поддержку MS. Я также видел несколько утилит, которые устанавливают «минимальный / максимальный пределы NT-кэша»; но они выглядят так, как будто они специфичны для рабочих наборов процессов, а не для резервных списков.
Я надеюсь, что кто-то, кто может мыслить нестандартно, может подумать о более изящном лекарстве для меня, вместо того, чтобы мне приходилось регулярно использовать жестоко пустой список ожидания; и, надеюсь, у меня будет четкое объяснение симптома, который я (и другие люди) наблюдаем. Причина, по которой я упомянул "нестандартно", заключается в том, что уже есть множество людей, которым нравится просто повторять, как сопоставленные файлы и приоритеты резервного списка "должны" работать на бумаге; что не очень полезно для меня.