Виртуальная память в Windows
Самая частая причина замедления работы системы под управлением Windows - заполнение физической памяти. При этом Windows начинает так называемую "подкачку" (paging) - перемещение блоков кода и данных программ (каждый такой блок называется страницей - page) из физической памяти на жесткий диск. Обращение к файлу подкачки время от времени - нормальное явление, не ухудшающее производительность системы, но частые запросы данных из файла на диске могут заметно снизить общую скорость работы системы. Эта проблема становится особенно заметной при переключении между несколькими программами, активно использующими память, на компьютере, который не содержит достаточного количества физической памяти. В результате диск почти постоянно находится в работе, потому что система пытается "перекачать" данные с него в память и обратно.
Если общий размер выделенной памяти превышает общий объем физической памяти, Windows приходится "перекачивать" страницы между быстрой оперативной памятью и гораздо более медленной виртуальной памятью в файле подкачки, что приводит к замедлению скорости системы.
В процессе установки Windows XP файл подкачки автоматически создается в корневой папке на том же диске, где расположены системные файлы Windows. Размер файла подкачки определяется, исходя из объема физической памяти в системе. По умолчанию минимальный размер файла подкачки в 1,5 раза больше, чем объем физической памяти, а максимальный размер - в 3 раза больше. Файл подкачки можно увидеть в окне Проводника, если включить режим отображения скрытых и системных файлов (рис. 3.3).
Рис. 3.3. Включение режима отображения скрытых и системных файлов
Обычно операционная система Windows сама устанавливает оптимальный объем виртуальной памяти и ее хватает для большинства задач, но если на компьютере выполняются приложения, требующие много памяти, то объем виртуальной памяти можно изменить.
Для этого нужно выполнить следующую последовательность действий:
1. Войдите в систему под учетной записью из группы Администраторы и откройте окно «Панель управления – Система».
2. На вкладке «Дополнительно» нажмите кнопку «Параметры» в разделе «Быстродействие» (рис. 3.4).
3. В диалоговом окне «Параметры быстродействия» выберите вкладку «Дополнительно» и нажмите кнопку «Изменить» (рис. 3.5) для отображения диалогового окна «Виртуальная память», которое показано на рис. 3.6 для Windows XP и на рис. 3.7 для Windows 7.
Текущие параметры файла подкачки отражены в поле «Общий размер файла подкачки на всех дисках».
4. Выберите любой диск из списка в верхней части диалогового окна, чтобы настроить параметры этого диска.
Можно изменить перечисленные ниже параметры:
- Особый размер. Укажите значение в поле Исходный размер для задания начального размера файла pagefile.sys на указанном диске (в мегабайтах). В поле Максимальный размер введите число не меньшее значения в поле Исходный размер, но не превышающее 4096 Мбайт (4 Гбайт).
- Размер по выбору системы. Выберите этот пункт для включения динамического управления размером файла подкачки для данного диска. Этот вариант следует выбирать, если вы не хотите изменять предлагаемые Windows по умолчанию параметры.
- Без файла подкачки. Используйте для всех дисков, на которых вам не нужен файл подкачки. Удостоверьтесь, что файл подкачки есть хотя бы на одном диске.
5. После внесения каких-либо изменений нажмите Задать для записи изменений.
6. Повторите этапы 4 и 5 для прочих дисков (при необходимости). Нажмите ОК для закрытия диалогового окна после завершения работы с ним.
Рис. 3.4. Кнопка «Параметры» для перехода к просмотру и/или
изменению параметров виртуальной памяти
Рис. 3.5. Кнопка «Изменить» для перехода к изменению параметров виртуальной памяти в Windows XP (слева) и в Windows 7
Рис. 3.6. Окно просмотра и настройки размера виртуальной памяти
в Windows XP
Рис. 3.7. Окно просмотра и настройки размера виртуальной памяти в Windows 7
Если на компьютере установлено несколько физических дисков, лучше всего разместить файл подкачки на самом быстром, причем предпочтительно, если системные файлы Windows будут находиться на другом диске. Еще лучше разделить файл подкачки на несколько физических дисков, поскольку контроллер дисков может параллельно обрабатывать несколько запросов на запись и чтение данных.
Не пытайтесь разместить файл подкачки на несколько логических дисках одного физического диска!!!
Если в системе есть один жесткий диск, разбитый на разделы C, D и E, а файл подкачки распределен на несколько разделов, то система может даже замедлиться, поскольку в такой конфигурации магнитным головкам жесткого диска приходится считывать данные из нескольких областей, а не подряд из одной области диска.
При уменьшении минимального или максимального размера файла подкачки и при создании нового файла подкачки на диске систему необходимо перезагрузить для того, чтобы изменения вступили в силу. Увеличение размера файла подкачки обычно не требует перезагрузки компьютера.
Если у вас очень много физической памяти, может возникнуть соблазн вовсе отключить файл подкачки. Не делайте этого!!!
Windows XP была разработана так, что файл подкачки используется для выполнения некоторых задач ядра, поэтому некоторые программы третьих фирм могут выдавать сообщение о нехватке памяти при попытке полностью отключить виртуальную память.
Windows не использует файл подкачки, пока он не понадобится, поэтому отключение виртуальной памяти не приведет к повышению производительности!!!
Windows может динамически увеличивать размер файла подкачки при необходимости. Эта функция работает только при выборе пункта «Размер по выбору системы», а также при задании максимального размера, превышающего текущий размер файла подкачки.
Исходя из опыта работы с предыдущими версиями Windows некоторые пользователи стараются создавать файл подкачки фиксированного объема с равными исходным и максимальным размерами. Теоретически, это должно поднимать производительность, поскольку исключает возможность фрагментации файла подкачки. Однако подсистема подкачки разработана таким образом, что на практике файл занимает только большие блоки дискового пространства, что делает фрагментацию минимальной. Можно заметить небольшое падение производительности в тот момент, когда Windows увеличивает размер файла подкачки, но это однократная операция, которая никак не влияет на производительность в среднем.