Механизмом работы виртуальная память windows

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

Приветствую вас, дорогие читатели.

Скорость работы компьютера зависит от многих параметров. На это влияет, как аппаратная часть, так и программная. И в статье далее я расскажу, что такое виртуальная память Windows 7, как она настраивается, и все основные моменты. Указанная ниже информация поможет улучшить взаимодействие с компьютером и увеличит скорость выполнения задач. Кроме того, должны пропасть многие ошибки, возникающие из-за недостачи свободных мегабайт.

Содержание статьи

Общая информация ( к содержанию ↑ )

Итак, что это такое? Виртуальная память представляет собой совокупность ОЗУ и файла подкачки. И если о первом элементе все понятно, о втором расскажу чуть подробнее.

В операционных системах от Microsoft предусмотрен специальный механизм, позволяющий программным путем увеличить число мегабайт, необходимых для обработки текущих данных. Так, пользователем или системой выделяется определенная область на жестком диске, в нужный момент добавляющаяся к оперативной памяти. С одной стороны – это помогает RAM, но с другой стороны появляется дополнительная нагрузка на винчестер. За данный сегмент отвечает файл pagefile.sys.

Настройка ( к содержанию ↑ )

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

Находим значок «Компьютер», вызываем на нем контекстное меню и выбираем «Свойства».

После указываем в списке «Защита системы». Это же можно сделать, нажав «Win+R», а затем ввести «sysdm.cpl». Результат будет идентичным.

Появится новое окно, в котором необходимо выбрать «Дополнительно».

Далее в разделе «Быстродействие» нажимаем «Параметры».

Теперь переходим на «Дополнительно».

В пункте «Виртуальная память» отправляемся на «Изменить».

Именно здесь и осуществляется настройка нужного элемента:

запуск или отключение;

уменьшение или увеличение.

Правильные параметры ( к содержанию ↑ )

Как включить pagefile.sys мы уже узнали. Теперь же приступим к настройке. Существует множество самых разных рекомендаций, касающихся правильной отладки нужного нам элемента.

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

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

Сколько ставить, если на компьютере установлено более 8 ГБ оперативки? Все просто – pagefile.sys лучше вообще отключить. В противном случае этого не стоит делать, так как могут появиться проблемы с работой отдельного ПО. И в будущем не многие вспомнят, что ранее именно пользователи отключили важный инструмент.

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

Перенос на другой диск ( к содержанию ↑ )

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

Читайте также:  Не работает команда shutdown windows 10

Отправляемся в меню настройки соответствующего элемента. Нажимаем «Без файла подкачки», а затем «Задать».

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

Подтверждаем свои действия и перезапускаемся.

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

Личный опыт ( к содержанию ↑ )

Если ваш компьютер предназначен для специальных задач и на нем установлено 4Gb или 6 ОЗУ, размер файла подкачки стоит указывать точный. А нередко лучше его и вовсе выключить. Когда вы решили все же задействовать pagefile, «Исходный» и «Максимальный» объемы должны быть одинаковы. Лучше в таком случае указывать порядка 3 Гб.

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

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

Какой размер ставить, если для пользователей математические вычисления, обработка графики, работа с видео и фото являются обыденными ежедневными занятиями? В таком случае лучше выбирать пункт, предоставляющий Windows возможность установки, независимо от ОЗУ. Конечно же если вы не пользуетесь 32 Гб – только в этом случае можно задуматься о полном отключении.

Не всегда можно сразу определить, сколько именно нужно ресурсов. Для вычисления можно воспользоваться простой схемой:

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

Далее переходим в «Диспетчер задач», путем нажатия «Ctrl+Alt+Del» и отправляемся на вкладку «Быстродействие». Нас интересует задействованная память.

Умножаем это число на два и вычитаем физический размер. Полученное выражение ставим в оба параметра.

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

Как всегда, видео на описываемую тему:

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

Виртуальная память в ОС Windows.

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

Операционная система Windows поддерживает сплошную (несегментированную) модель памяти. Каждому процессу предоставляется линейное адресное пространство размером до 4-х Гбайт. При этом область памяти размером 2 Гбайт с адресами 00000000H — 7FFFFFFFH предоставлена приложению, а оставшиеся 2 Гбайт зарезервированы для использования ОС. Адресные пространства всех запущенных приложений разделены. Такое разделение выполняется с помощью назначения приложениям индивидуальных наборов страниц виртуальной памяти. В результате для каждого приложения выполняется отображение линейных адресов в собственный набор страниц виртуальной памяти, не пересекающийся с набором страниц других приложений. Этим достигается выполнение функции защиты памяти, необходимой для обеспечения надежной многозадачной работы.

Каждая страница имеет свой дескриптор, который содержит всю необходимую информацию о странице. Дескриптор страницы имеет следующий формат, показанный на рис. 4:

Рис 4. Формат дескриптора страницы.

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

Операционная система Windows позволяет создать до 16 -ти отдельных файлов виртуальных страниц, расположенных на различных дисковых устройствах. Разряды 6 — 3 хранят номер файла страницы, в котором находится данная страница.

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

Читайте также:  Paint для windows 2007

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

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

Для работы с виртуальной памятью в программном интерфейсе Windows имеется набор соответствующих функций. Для резервирования и получения в свое распоряжение (назначения) виртуальной памяти служит функция VirtualAlloc, которая осуществляет выделение и назначение (при повторном обращении) желаемого объема виртуальной памяти с указанным типом доступа. Результатом работы этой функции является указатель на начало области виртуальной памяти (в случае успешного завершения). Виртуальная память освобождается после использования с помощью функции VirtualFree. Изменение типа доступа в процессе работы программы осуществляется с помощью функции VirtualProtect.

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Виртуальная память (Операционные Системы)

Виртуальная память — метод управления памятью, которая реализуется с использованием аппаратного и программного обеспечения компьютера. Она отображает используемые программами виртуальные адреса в физические адреса в памяти компьютера. Основная память представляется в виде непрерывного адресного пространства или набора смежных непрерывных сегментов. Операционная система осуществляет управление виртуальными адресными пространствами и соотнесением оперативной памяти с виртуальной. Программное обеспечение в операционной системе может расширить эти возможности, чтобы обеспечить виртуальное адресное пространство, которое может превысить объем оперативной памяти и таким образом иметь больше памяти, чем есть в компьютере. Виртуальная память позволяет модифицировать ресурсы памяти, сделать объём оперативной памяти намного больше, для того чтобы пользователь, поместив туда как можно больше программ, реально сэкономил время и повысил эффективность своего труда. “Открытие” виртуальной памяти внесло огромную контрибуцию в развитие современных технологий, облегчило работу как профессионального программиста, так и обычного пользователя, обеспечивая процесс более эффективного решения задач на ЭВМ [1] .

Содержание

Преимущества виртуальной памяти

К основным преимуществам виртуальной памяти относят:

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

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

Виртуальная память делает программирование приложений проще:

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

Виртуализация памяти может рассматриваться как обобщение понятия виртуальной памяти.

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

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

Страничная организация памяти

При страничной организации все ресурсы памяти, как оперативной, так и внешней представляются для пользователя единым целым. Пользователь работает с общим адресным пространством и не задумывается какая память при этом используется: оперативная или внешняя, а эта общая память носит название виртуальной (моделируемой). Виртуальная память разбивается на страницы, которые содержат определённое фиксированное количество ячеек памяти. При этом одна страница математической памяти не может быть больше или меньше других, все страницы должны быть одинаковы по количеству ячеек. Типичные размеры страниц 256, 512, 1024, 2048 Байт и более (числа кратные 256).

Преимущества виртуальной памяти со страничной организацией

  • Достаточно большой объём прямо адресуемой памяти. Объем памяти может исчисляться сотнями мегабайт (и даже гигабайтами). Размер виртуальной памяти целиком зависит от объёма накопителя на [жестком] магнитном диске. Созданный SWAP файл размещается на диске и эмулирует оперативную память. При этом пользователь не задумывается о том куда будет помещен “кусок” его программы с которой он только что отработал.
  • Программы пользователя могут размещаться в любых свободных страницах [2] .
  • Повышает уровень мультипрограммной работы. С организацией виртуальной памяти со страничной организацией пользователь получил реальную возможность загружать в память большее количество программ для того чтобы машина обрабатывала программы сразу (в действительности процессор устанавливает приоритет для каждой программы, находящейся в памяти, и далее в соответствии с приоритетом выделяет определённое количество времени на реализацию каждой программы или команды.
Читайте также:  Окошко громкости windows 10

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

  • Основным недостатком виртуальной памяти является то количество времени, которое машина тратит на обращение к внешней памяти. Извлечь необходимую информацию из ячеек оперативной памяти не представляет особого труда и больших затрат времени. Совсем иначе обстоит дело с диском: для того чтобы найти необходимую информацию, нужно сначала “раскрутить” диск, потом найти необходимую дорожку, в дорожке найти сектор, кластер, далее считать побитовую информацию в ОП. Все это требует времени и, порой если при методе случайного удаления страниц*, процессору понадобятся сразу несколько страниц, хранящихся во внешней памяти, большого времени. К сожалению, этот недостаток принадлежит к виду “неисправимых”.
  • Наличие сверхоперативной памяти (СОП).

Сегментно-страничная организация виртуальной памяти

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

Таблицы страниц

Таблицы страниц используются для перевода виртуальных адресов в физические адреса, используемые аппаратными средствами для обработки инструкций; такое аппаратное обеспечение, который обрабатывает этот конкретный перевод часто называют блоком управления памятью. Каждая запись в таблице страниц держит флажок, указывающий, находится ли соответствующая страница в оперативной памяти или нет. Если она находится в оперативной памяти, запись в таблице страниц будет содержать реальный адрес памяти, где хранится страница [3] . Системы могут иметь как одну таблицу страниц для всей системы, так и отдельные таблицы страниц для каждого приложения и сегмента, деревья таблиц страниц для больших сегментов или некоторой их комбинации. Если есть только одна таблица страниц, различные приложения, работающие одновременно используют различные части одного диапазона виртуальных адресов. При наличии нескольких страниц или сегментов таблицы, есть несколько виртуальных адресных пространств и параллельных приложений с помощью отдельных таблиц страниц для перенаправления на другие реальные адреса.

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

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

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

Закрепленные страницы

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

Оцените статью