Модифицировать Windows "Swappiness"
Есть ли в Windows 7 изменяемый эквивалент "перестановки"?
В моей системе 8 ГБ ОЗУ, что более чем достаточно для повседневного использования. Я хотел бы изменить поведение подкачки, которое в *NIX-системах называют перестановкой, и установить его равным 0, как я делал на своей машине с Ubuntu.
Я искал в Интернете для этого, но все ответы, похоже, для *NIX систем.
2 ответа
Под Windows есть нечто, называемое "файл подкачки", где система меняет приложения, чтобы освободить оперативную память. В настоящее время я не на машине с Windows, но шаги, которые Adobe выложила здесь, выглядят правильно (я думаю, что Win + Pause является ярлыком для "Расширенные настройки системы").
Хотя возможно отключить файл подкачки, есть некоторые опасения по этому поводу. Для получения дополнительной информации прочитайте это
Виртуальная память - это нечто большее, чем просто "приложения, выделяющие ОЗУ, и когда физическая ОЗУ заканчивается, что-то выгружается в SWAP".
В Linux (и, возможно, UNIX в целом) система пытается сохранить страницы, недавно прочитанные в ОЗУ: выполненные программы, загруженные данные, недавно записанные данные (уже на диске) и т. Д. Так что, если одна и та же программа выполняется снова, она не выполняет не нужно перезагружать с диска. Когда какая-либо программа запрашивает выделение большего объема памяти для своего виртуального адресного пространства, сначала перенаправляются оставшиеся дисковые буферы (без доступа к диску). Если этого недостаточно, некоторые страницы запущенных приложений, к которым недавно не обращались, фактически заменяются. В Linux обмен обычно не происходит вообще. Как только ваша система начинает обмениваться, вы замечаете повышенную активность диска (и медлительность), и вы говорите "о, что за…", потому что это, вероятно, означает, что у какого-то приложения происходит утечка памяти или что-то из-под капота стало неуправляемым.
У Windows традиционно есть дурацкая дополнительная привычка: они заменяют целые приложения пользовательского пространства после некоторого перерыва в бездействии. Строго говоря, без извинения, просто чтобы иметь как можно больше доступной оперативной памяти, "на всякий случай", вы хотели запустить еще одно голодное приложение. Если вы оставите компьютер включенным и уйдете на несколько часов, то по возвращении вы заметите, что любое приложение, на которое вы переключаетесь, автоматически загружается из свопинга. Такое поведение было особенно болезненным в Windows 2000 и постепенно становится менее заметным в более современных версиях Windows. В W2k отключить своп было легко. Windows 7 все еще может сочиться как мед, иногда без особой причины, Windows 8.1 и 10 заметно улучшились... но все еще нет настраиваемой ручки для "подкачки" или других настраиваемых параметров алгоритма подкачки.
Существуют и другие факторы, которые могут привести к перебоям системы при медленном доступе к диску. В Windows 7 вы никогда не узнаете, что система только что поменяла ваше приложение в старом добром стиле W2k, или вам следует винить Антивируса в том, что ваше приложение запускается так медленно, или в Windows Update что-то делает в на этот раз (известно, что в его алгоритмах встречаются встречные причуды, которые приводят к зависаниям при 100% потреблении ЦП и / или перегрузке диска), или, если конкретно какая-то задача по уборке.NET Framework потерялась в базе данных WinSXS или что-то в этом роде. В некоторых случаях / в некоторых версиях / воплощениях программного обеспечения Microsoft фактически кажется, что некоторые "родные" окна "в фоновых задачах" (в частности, управление локальной базой данных Windows Update) намеренно "скрыты" в диспетчере задач, их использование ЦП и ОЗУ не показать в общем потреблении памяти."Легитимная" активность, но довольно трудно отличить ее от руткита вредоносного ПО... Только после того, как перебивание прекращается, и сразу появляется всплывающее окно с надписью "доступны новые обновления", вы понимаете причину.
По крайней мере, последние версии Windows могут сообщать вам об активности дискового ввода-вывода для каждого процесса, а отдельные службы теперь отображаются отдельно (вместо одного процесса SVCHOST.EXE).