Файл подкачки предоставляет ОС два основных преимущества, ни одно из которых не подвержено существенному влиянию 64-разрядной ОС.
- Файл подкачки увеличивает предел фиксации.
Когда приложение выделяет память, ОС Windows обещает или берет на себя обязательство иметь достаточно места для хранения даже в худшем случае. Это хранилище может находиться в ОЗУ или в файле подкачки. Лимит фиксации определяется как размер оперативной памяти плюс размер файла подкачки за вычетом небольших накладных расходов. Без файла подкачки ограничение на коммит будет несколько меньше размера оперативной памяти. Диспетчер памяти отслеживает общий объем выделенной памяти, чтобы гарантировать, что он никогда не превысит предел фиксации.
Без файла подкачки ограничение на принятие является жестким ограничением, которое нельзя увеличить во время работы ОС. При конфигурации файла подкачки по умолчанию ограничение на коммит не только намного больше, но и мягкое ограничение, которое может быть увеличено путем расширения файла подкачки, когда это необходимо.
Достижение лимита коммитов в Windows - это плохо. Большинство приложений не очень хорошо справляются с этой возможностью, и сама ОС часто не может с этим мириться.
- Файл подкачки оптимизирует использование оперативной памяти.
В любой момент времени компьютер может содержать большое количество данных, к которым не обращались в течение длительного времени, и которые могут быть недоступны во время сеанса. Менеджер памяти, конечно, не может знать, насколько важны эти данные, поэтому он должен где-то их хранить.
Хранение всех этих редко используемых данных в высокоскоростной оперативной памяти является серьезным злоупотреблением этим ценным ресурсом. Если бы оперативная память не имела такого бремени, было бы больше доступных для использования приложения и для целей кэширования. Кэширование действительно важно в современной ОС и является одним из основных факторов, способствующих повышению производительности.
Файл подкачки предоставляет место, где менеджер памяти может разгрузить эти редко используемые данные и освободить оперативную память от этой обязанности. Это правда, что это будет стоить, но помните, что это редко используемые данные, поэтому они не должны быть серьезными. А менеджер памяти имеет множество оптимизаций, чтобы минимизировать эту стоимость.
Но вместо того, чтобы думать об этом как о стоимости, считайте это инвестицией в производительность. Так же, как разумное вложение денег - это хорошая вещь, менеджер памяти тратит немного времени на использование файла подкачки в ожидании, что это принесет большие дивиденды позже. Обычно это работает.
Это не какая-то новая идея. Он использовался в Windows и Linux много лет, а в больших компьютерных системах задолго до этого. Это проверенный и верный принцип, который был оптимизирован на протяжении десятилетий.
В итоге, пусть Windows управляет файлом подкачки так, как пожелает. Дизайнеры знают, что делают. К сожалению, Microsoft не очень хорошо донесла это до пользователей, и существует множество заблуждений. Многое из того, что вы читаете в интернете о файле подкачки, содержит как минимум серьезные ошибки.