Что такое виртуальная память компьютера

Виртуальная память: Что это и как ее увеличить?

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Виртуальная память — что это?

Виртуальная память является подкачкой (дополнением) оперативной памяти. Она присутствует практически во всех операционных системах.

При запуске ресурсоемких программ у нас постоянно возникает потребность в виртуальной памяти. По этому сегодня мы рассмотрим подробный обзор «что это такое?» и как мы можем ее изменить в лучшую сторону.

Что такое виртуальная память?

Виртуальная память (Virtual Memory, ВП) — это метод управления памятью компьютера, использующий для работы файл подкачки (swap file). При недостатке существующего объема ОЗУ, позволяет запускать на ПК более ресурсозатратные программы. В таком случае данные приложения автоматически перемещаются между основной памятью и вторичным хранилищем.

Виртуальная память так же обладает рядом достоинств:

За счет ее использования компьютер способен изолировать запущенные процессы друг от друга и рационально распределять RAM.

Как узнать объем файла подкачки (swap file)

Файл подкачки хранится на винчестере компьютера. Если для работы устройства используется несколько жестких дисков, то он будет расположен на самом быстром из них. Определить объем ВП можно с использованием стандартных средств Windows или специального софта.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Размер свапа подкачки можно узнать через штатную утилиту «Системный монитор».

Для этого:

При определении размера ВП система исходит не из объема ОЗУ, а из задач, которые выполняются на устройстве. Поэтому для определения размера необходимо запустить приложения и компоненты, которые обычно используются компьютером и посмотреть пиковое значение свапинга в течение этого сеанса. Он и будет определять величину файла подкачки.

Dump File и его типы

Swap используется не только для расширения физической памяти, но и для создания аварийных дампов при возникновении «внештатных» аварийных ситуаций.

Как это работает:

Таким образом при автоматическом выборе размера свапа, Windows руководствуется настройками для создания аварийного дампа.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Загрузка и восстановление

Дампы можно разделить на 4 типа:

В него записывается все содержимое RAM на момент незапланированного завершения работы. С учетом этой информации файл подкачки должен иметь размер равный физической памяти компьютера +1 МБ (используется для создания записи в системном журнале).

В него записывается только информация и память, выделенная для ядра операционной системы. Он занимает сравнительно меньше места и его объема достаточно, чтобы Windows могла определить причины аварийного завершения работы.

Записывает только самую необходимую информацию для выявления причин аварийного сбоя. Здесь находится стоп-код и описание самой ошибки, дополнительно указываются загруженные на устройство драйвера и перечень запущенных процессов.

Доступен только для операционных систем семейства Windows начиная от восьмерки и выше, либо Server 2012. Представляет собой аналог дампа ядра, но с тем отличием, что система может постоянно менять размер файла подкачки, позволяя ей выбирать оптимальный для работы вариант.

Как изменить Dump File

Перед тем, как менять размер виртуальной памяти, необходимо правильно определить и выбрать тип дампа. Сделать это можно используя штатные инструменты Windows. Для этого выполните следующие действия:

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Загрузка и восстановление

Как изменить объем виртуальной памяти через быстродействие

Запустите системную утилиту «Выполнить» одновременным нажатием клавиш Windows+R или откройте ее через Пуск. После этого:

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

По умолчанию система определяет размер полностью в автоматическом режиме. Это наиболее оптимальная опция для Windows. При изменении объема свапа вручную важно, чтобы новый размер виртуальной памяти был не менее существующего, в противном случае возможны сбои в работе ПК.

Как добавить виртуальную память на Windows

Как правило, среднестатистическому пользователю достаточно того объема ВП, которая выделяется устройством автоматически. Если на ПК мало физической RAM, то увеличить ее объем можно за счет свапа.

Для этого:

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Рекомендации по использованию виртуальной памяти

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Если вы не знаете, какой оптимальный объем для свапа выбрать и на что это будет влиять, то далее мы предлагаем ознакомиться вам с небольшими советами, которые помогут увеличить быстродействие ПК.

Итак, рассмотрим ряд советов:

После манипуляций с настройками компьютера и изменением размера ВП лучше перезагрузить компьютер (хотя это не всегда обязательно) и запустить специальную утилиту для дефрагментации. Это поможет переместить его ближе к началу раздела, чтобы система получала к нему моментальный доступ.

Так же подробно про ВП можно посмотреть в видеоролике ниже:

Виртуальная память или файл подкачки

В видео рассматривается оптимальный размер файла подкачки

Сегодня мы ответили на вопрос «Виртуальная память, что это? И для чего она нужна?». Она помогает значительно повысить быстродействие системы и используется для хранения информации при сбоях. По умолчанию объем файла подкачки регулируется Windows полностью в автоматическом режиме.

Если пользователь хочет указать его самостоятельно, то для этого необходимо учесть выбранный тип дампа (либо отключить его). Объем виртуальной памяти зависит от дампа и общего объема RAM.

Понравилась статья? Подпишитесь на канал, чтобы быть в курсе самых интересных материалов

Источник

Что на самом деле может виртуальная память

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Мы в 1cloud стараемся рассказывать о различных технологиях — например, контейнерах, SSL или флеш-памяти.

Сегодня мы продолжим тему памяти. Разработчик Роберт Элдер (Robert Elder) в своем блоге опубликовал материал с описанием возможностей виртуальной памяти, которые известны не всем инженерам. Мы представляем вашему вниманию основные мысли этой заметки.

Примечание: Исходный материал содержит большое количество сложных терминов и технологических описаний, поэтому если вы обнаружили какую-то ошибку или неточность — напишите нам личным сообщением, чтобы мы могли внести правки и сделать материал лучше.

Занявшись обновлением собственного компилятора C и написанием спецификации CPU Элдер понял, что с виртуальной памятью связано очень много вопросов, которые до конца не понятны начинающим разработчикам. По этой причине он решил написать свое интерактивное пособие.

Прежде чем переходить к статье Элдера, можете посмотреть видео, на котором Джейсон Питт (Jason Pitt) рассказывает о том, что такое виртуальная память.

Как это работает

Элдер создал на своем сайте таблицу с физическим и виртуальным представлениями 256-байтного адресного пространства. Ниже представлен скриншот этой таблицы. Интерактивная версия доступна в блоге инженера по этой ссылке.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Обозначения, встречающиеся в интерактивной таблице Элдера:

0x0Это указатель на страничную структуру верхнего уровня. На машинах Intel это значение хранится в регистре CR3. С ARM все немного сложнее.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераПервая страничная структура. При двухуровневой организации таблиц часто называется «директорией» страниц. В нашем случае каждая запись в директории занимает 8 бит (1 байт) и содержит информацию о месторасположении таблицы страниц.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераВторая страничная структура – это так называемая таблица страниц (page table). Каждая запись содержит информацию о расположении физической страницы.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераФизическая страница, с которой в настоящий момент ведется работа.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераАктивная запись директории страниц или таблицы страниц.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераВыбранное расположение в памяти.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераПамять, доступная для чтения (Readable Memory). В данном примере разрешения не анализируются, однако в реальной системе будет осуществляться проверка бита на соответствие требуемому методу доступа.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераПамять, доступная для записи (Writeable Memory).
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераПамять, для которой разрешено выполнение (Executable Memory).
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераНедоступная виртуальная память (Inaccessible Virtual Memory).
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераНеинициализированная физическая память (Unitialised Physical Memory). К ней нельзя обратиться через адресное пространство виртуальной памяти – это вызовет страничное нарушение.
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераНедоступная физическая память (Inaccessible Physical Memory). Участки памяти, к которым нельзя получить доступ.

Отображение адресов «один в один» (Identity Mapping)

Это один из самых простых способов отображения виртуальной памяти: каждый физический адрес отображается на такой же виртуальный адрес. Этот вариант не слишком подходит для работы многофункциональной ОС, но может быть весьма полезен для быстрой разработки некоторых систем (вот пример микроядра, над которым ведет работу Элдер).

Рекурсивное отображение (Recursive Mapping)

Чтобы управлять памятью, нужно знать, где в физической памяти располагаются страничные структуры. Когда блок управления памятью (MMU) начинает работу, вы можете взаимодействовать напрямую только с адресами виртуальной памяти. По этой причине отслеживать физические адреса бывает очень трудно.

Одним из решений этой проблемы могут служить рекурсивные таблицы страниц. Если добавить к страничной структуре верхнего уровня рекурсивную запись, то вы сможете с легкостью сказать, какой виртуальный адрес позволит получить доступ к любому физическому адресу в пределах этой структуры. Вам нужно лишь решить, какой виртуальный адрес сгенерировать, чтобы «попасть» на рекурсивную запись.

Как только вы сгенерируете виртуальные адреса, соответствующие записям в директории страниц (соединенные через рекурсивную запись), записи директории страниц можно будет считать записями таблицы страниц. Если структура записей таблицы страниц соответствует структуре записей директории страниц, то их можно считать равнозначными при трансляции адресов.

В итоге это дает возможность ссылаться на любую страничную структуру через виртуальную память. Недостатком рекурсивного отображения можно считать необходимость выделения дополнительного адресного пространства.

Отображение на одну страницу (Everything Mapped to the Same Page)

Важная особенность виртуальной памяти состоит в том, что она позволяет отображать физические страницы на множество виртуальных адресов в памяти. Это дает возможность отображать страницы, принадлежащие участку разделяемой памяти с атрибутом «только для чтения», на несколько процессов.

Страничные нарушения (Page Faults Everywhere)

Страничные нарушения возникают тогда, когда мы обращаемся к области, для которой не установлен инициализирующий бит. Еще страничное нарушение проявляется в тот момент, когда мы пытаемся провести некое действие, идущее вразрез с правами доступа (хотя в представленном примере разрешения не проверяются, в реальной системе подобное возможно).

Переключение контекста между двумя процессами (Context Switching Between 2 Processes)

Изменяя указатель на страничную структуру верхнего уровня, мы переходим в другую страничную директорию. При этом доступные адреса остаются теми же, но их содержимое меняется. Это объясняет, почему в ОС с виртуальной памятью множество процессов могут использовать один и тот же виртуальный указатель.

Решение проблемы внешней фрагментации (Solving External Fragmentation)

Внешняя фрагментация – это весьма неприятная вещь. Рассмотрим такую ситуацию: у вашего компьютера 4 ГБ памяти, но нет жесткого диска. После нескольких операций распределения памяти система оказалась в ситуации, когда все пространство памяти свободно, кроме одного байта в самой середине. В этом случае, если вам потребуется разместить большой трехгигабайтный блок, вы не сможете этого сделать (несмотря на то, что свободной памяти достаточно).

Из этой ситуации есть два выхода:

Второй вариант так же не сработает, потому что процесс ждет, что выделенный ему участок памяти будет непрерывным. Если он перестанет быть таковым, то придется создавать совершенно новый набор инструкций и сохранять информацию о том, как получить корректный адрес второй половины.

Виртуальная память помогает достаточно эффективно разрешить эту проблему. Можно с легкостью переназначить пространство виртуальных адресов, чтобы несвязанные между собой части физической памяти выглядели единым целым. В этом случае не происходит никакого перемещения данных – мы просто обновляем записи таблицы страниц.

Копирование при записи (Copy-On-Write)

Виртуальная память крайне полезна для повышения производительности при выполнении команды fork. Если делать полные копии каждой страницы памяти, которую использует процесс, то это приведет к пустой трате циклов CPU и RAM. Идея копирования при записи состоит в том, что мы просто отображаем образ памяти родительского процесса в адресное пространство дочернего процесса.

После этого ОС запрещает обоим процессам писать в эту память. Действительная копия будет создана только в исключительных ситуациях. На практике выходит так, что после создания процесса-копии большинство страниц никогда не модифицируется, а это только повышает эффективность метода, делая его менее ресурсоемким.

Эксперимент со страницами

Элдер провел эксперимент на своем компьютере с операционной системой Ubuntu 14.04. Он объявил несколько переменных подряд, чтобы посмотреть, будут ли их указатели также располагаться рядом друг с другом.

Вот, что он получил на выходе:

Видно, что указатели следуют не в заданном порядке. Элдер пошел дальше и провел еще один эксперимент, в котором показал, что константы, символы и функции хранятся в той последовательности, в которой их объявил программист. Код и объяснение вы можете найти здесь.

Вызов функции с помощью констант

В следующей программе задаются несколько произвольных констант (которые позже будут заменены) и функция, которая принимает на входе целое число и увеличивает его на 8. В данном примере функция main следует сразу за функцией func1. После запуска программа выводит информацию, необходимую для выполнения функции func1.

Можно просто скопировать эти значения в целочисленные константы, которые будут расположены в памяти одна за другой (пример может не сработать, если ваша система отличается от системы Элдера). Теперь, поскольку они находятся на одной странице, можно обратиться к ним как к исполняемым данным и использовать вместо указателя на функцию указатель на «a».

На выходе по-прежнему имеем число 37.

Источник

Виртуальная память компьютера. Как изменить объем памяти

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютераВ компьютере, как известно, есть оперативная память, используемая для хранения данных, которые нужны процессору в первую очередь, но есть также такое понятие, как виртуальная память компьютера.

Процессор постоянно решает какие-то задачи и все данные, которые нужны для его работы, помещаются в оперативную память и поскольку оперативная память имеет очень высокое быстродействие, то процессор также быстро получает доступ к необходимой информации.

Но оперативная память часто ограничена по размеру, так в домашних компьютерах, к примеру, размер ее редко превышает четыре гигабайта. Обычный размер оперативной памяти для ноутбуков, это 1 или 2 гигабайта.

Что такое виртуальная память компьютера

Для того, чтобы помочь компьютеру, несколько разгрузить оперативную память, операционная система Windows создает специальный файл, который в дальнейшем выполняет роль виртуальной памяти.

Этот файл называют также файлом подкачки – pagefile.sys, он располагаться на жестком диске компьютера и содержит атрибуты скрытый и системный.

Этот файл используется системой, чтобы хранить части программ и файлов, которые не умещаются в оперативной памяти, но необходимы для работы компьютера в данный момент.

По мере надобности Windows передает данные из файла виртуальной памяти в оперативную память и процессор получает таким образом быстрый доступ к этим данным.

Доступ к виртуальной памяти

Чтобы увидеть файл подкачки, заходим в программу Проводник и зайдем на диск С. Если отключено отображение скрытых файлов, то можно зайти в настройки программы Проводник, в меню – УпорядочитьСвойстваПараметры папок и поискаВид и откроется окошко Параметры папок.

Если собрана сеть, то доступ можно получить в Центре управления сетями и общим доступом. Тут опять же избираем СервисПараметры папок.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Откроется одноименное окно, выбираем в нем Вид и в Дополнительных параметрах снимаем пометку Скрывать защищенные системные файлы, а также нажимаем Показывать скрытые файлы, папки и диски. Жмем Применить.

Теперь на диске С появляются несколько папок и файлов, которые имеют атрибуты скрытый или системный. Здесь же можно увидеть файл pagefile.sys, который отмечен, как системный и его объем на данный момент составляет более 3 Гб.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

По мере работы компьютера и запуска различных программ размер файла виртуальной памяти может увеличиваться. При этом можно увидеть, что размер свободного места на диске С непрерывно меняется.

В первую очередь это связано с тем, что работает виртуальная память, постоянно в нее помещаются какие-то файлы, фрагменты программ и поэтому этот файл постоянно изменяет свой размер.

Иногда при работе на компьютере может появиться сообщение о том, что недостаточно виртуальной памяти. Речь при этом идет как раз таки о том, что файл подкачки оказался мал.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

При этом может быть две ситуации. Во-первых, место на диске С уменьшилось до таких размеров, что файл подкачки не может более увеличиваться в объеме.

Вторая ситуация, это файл подкачки ограничен в объеме пользователем и его не достаточно для хорошего функционирования компьютера.

Если появилось сообщение о недостаточности виртуальной памяти, надо сначала проверить свободное место на системном диске, как правило, это диск С.

Свободное место на диске С требуется как для работы файла подкачки, так и для работы различных программ, поскольку они создают различные временные файлы, в большинстве случаев они затем удаляются, как только работа программы будет закончена.

Объем современных жестких дисков исчисляется часто терабайтами, поэтому оставить достаточное свободное место на диске С проблем не составит.

Как изменить объем виртуальной памяти

Для изменения объема виртуальной памяти необходимо перейти из панели управления в окно Система или нажимаем клавиши Windows + Pause.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

В окне Система переходим во вкладку Дополнительные параметры системы. Открывается окно Свойства системы и в нем есть блок Быстродействие.

Нажимаем на кнопку Параметры, откроется окошко Параметры быстродействия. Открываем вкладку Дополнительно, где есть раздел Виртуальная память.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Нажимаем здесь на кнопку Изменить. В открывшемся окне снимаем галочку Автоматически выбирать объем файла подкачки и отмечаем Указать размер вручную.

Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Если размер установлен автоматически, то операционная система будет изменять размер по своему желанию. Можно этот размер ограничить, допустим 3500 Мб.

В этом случае виртуальная память компьютера всегда будет одного размера и пространство на диске С не будет изменяться из-за файла подкачки.

Есть возможность также выбрать какой-то диапазон значений и тогда файл виртуальной памяти станет меняться в заданных пределах.

Можно установить опцию Без файла подкачки и тогда виртуальная память компьютера использоваться вообще не будет.

Тогда быстродействие операционной системы несколько повысится, потому как оперативная память работает намного быстрее, чем жесткий диск.

Но произойдет это только в том случае, если на компьютере установлено достаточно оперативной памяти.

Чаще всего файл подкачки отключить невозможно, поэтому указываем его величину вручную, либо оставляем галочку Автоматически изменять объем файла подкачки. Нажимаем OK и выбранные параметры вступают в силу после того, как компьютер будет перезагружен.

Источник

Файл подкачки Windows

По запросу в любой поисковой системе «файл подкачки windows» можно получить тысячу-другую скопированных друг у друга, либо немного отличающихся ответов по выбору оптимальных размеров для pagefile.sys.

Самые распространенные советы выглядят примерно следующим образом: для машин с маленьким ОЗУ нужно задавать размер файла подкачки k*RAM, где RAM — объем физической памяти, k — какой-нибудь коэффициент, коих много самых разнообразных. И 1,5, и 2, и даже 3 встречал. Если же планок памяти стоит на 4Гб и больше, то «смело отключайте виртуальную память в принципе».

Статья о том, стоит ли верить ли этим советам, и если да, то насколько.

Что такое файл подкачки?

pagefile.sys, он же файл подкачки — файл, представляющий собой виртуальную память, которая позволяет одновременно выполняться большому количеству процессов, которые все сразу не смогли бы поместиться в физической памяти.
По умолчанию после установки Windows файл подкачки увеличивается автоматически при заполнении текущего объема.

Если отключить файл подкачки

Если попытаться отключить файл подкачки в windows 7, система выдаст предупреждающее окно, в котором сообщит о неприятных последствиях:
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Отсюда следует, что не стоит полностью отказываться от использования виртуальной памяти, иначе в случае краха не получится даже проанализировать причину сбоя. Указанный на скриншоте минимальный размер в 1МБ берется из расчета конфигурации дампа памяти в настройках «загрузка и восстановление»:
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Если выбрать для записи отладочной информации полный дамп, то размер увеличивается на несколько порядков. У меня он составил 400МБ.

Кроме отсутствия возможности записи дампа, после отключения файла подкачки может появится назойливое сообщение о нехватке памяти. Появление его будет сопровождаться жуткими тормозами ресурсоемких приложений.

Если перенести файл подкачки на другой раздел

Куча статей по оптимизации вашей ОС рекомендует перенести файл подкачки на отдельно созданный и отформатированный в FAT32 раздел жесткого диска. При этом повышается быстродействие и уменьшается фрагментация этого файла.

При подобных манипуляциях не стоит забывать, что файл подкачки должен присутствовать в системном разделе для корректной записи отладочной информации. Выбирать приходится между быстродействием и возможностью сбора данных о возникших неприятностях.

Размер файла подкачки

Вернемся к нашим апельсинам к вопросу об оптимальном размере. Перекопав множество статей, информационных изданий и даже рекомендации Microsoft, я так и не нашел четкого и однозначного ответа на этот вопрос. Да и не нашел бы, как стало мне ясно после прочтения перевода статьи Марка Руссиновича Преодолевая ограничения Windows: виртуальная память. В заключении приведу ссылки на перевод и оригинал, а сейчас постараюсь объяснить, откуда же взять размер файла.

Для начала потребуется утилита Process Explorer, она является бесплатным аналогом дефолтного Task Manager’a, но обладает многими преимуществами. Скачать можно по ссылке.

После запуска Process Explorer’a выберите самые ресурсоемкие в плане используемой памяти приложения, которые используете в повседневной жизни, и запустите их все одновременно. В окне Process Explorer’a нажмите CTRL+I или выберите в меню View/System Information, из всего многообразия представленных в окне данных нужно выбрать область Commit Charge
Что такое виртуальная память компьютера. Смотреть фото Что такое виртуальная память компьютера. Смотреть картинку Что такое виртуальная память компьютера. Картинка про Что такое виртуальная память компьютера. Фото Что такое виртуальная память компьютера

Значение Peak — пиковое значение выделенной памяти для всех приложений, складываемое из физической и виртуальной памяти.

Далее вооружаемся калькулятором и вычитаем из этого значения размер оперативной памяти. Если получается отрицательное значение — берем требуемые системой 400МБ (может быть другое значение), необходимые для создания дампа. Если получается положительное значение — выставляем таким минимальное и максимальное значение файла подкачки. Можно подстраховаться и установить «про запас» максимум выше, но тогда вырастет фрагментация файла в случае увеличения его размеров. Поэтому лучше зафиксировать на одном месте.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *