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

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

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

виртуальная память ?

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

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

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

Увеличение виртуальной памяти

Чтобы это сделать, вам понадобится войти в главное меню, где найти «Панель управления», а потом пункт «Система». Во вкладке «Дополнительно» вы должны найти пункт «Быстродействие», после чего раскрыть окно параметров. В разделе с наименованием «Виртуальная память» вы увидите доступный объем памяти на текущий момент. Изменение настроек можно осуществить при помощи кнопки «Изменить». Стоит ставить значение, превышающее объем оперативной памяти вдвое.

Итак, что такое виртуальная память, вы уже поняли, а теперь стоит сказать о том, как ее очистить. Эта процедура необходима для сохранения конфиденциальности данных, расположенных в файле подкачки. Это делается посредством специальной функции, которая обычно отключена. Чтобы активировать ее, вам потребуется в «Панели управления» найти папку «Администрирование», где открыть «Локальную политику безопасности». В этом окне потребуется щелкнуть правой кнопкой по пункту «Очистка файла виртуальной памяти», где выбрать «Свойства». Там вам потребуется задействовать опцию «Выключить», после чего кликнуть «Применить», а потом «Ок». Далее нужно будет дважды перезагрузить компьютер, будет очищен после второго раза.

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

В настоящее время технология виртуальной памяти имеет аппаратную поддержку на всех современных процессорах.

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

Также существует термин swap, означающий виртуальную память (точнее способ её представления) или файл подкачки.

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

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

Свопинг - один из методов реализации виртуальной памяти, при котором отдельные, как правило, неактивные процессы перемещаются из оперативной памяти на жёсткий диск, тем самым освобождая оперативную память для загрузки других процессов. Процессы целиком перемещаются между ОЗУ и жестким диском, поэтому иногда некоторые процессы могут полностью отсутствовать в оперативной памяти. Если процесс снова нужен для работы, то он возвращается диспетчером памяти в ОЗУ. Существуют различные алгоритмы выбора процессов на загрузку и выгрузку, а также различные способы выделения оперативной и дисковой памяти загружаемому процессу.

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

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

    Для наиболее эффективной организации свопинга и повышения производительности используют следующие методики:
  • 1. Под swap-файл выделяется место, объем которого равно объёму оперативной памяти, умноженному на 1, на 2 или на 3.
  • 2. Если в компьютере или ноутбуке несколько жестких дисков, то располагать файл подкачки нужно на менее нагруженном из них.
  • 3. Располагать файл подкачки следует на диске с наибольшими скоростями чтения/записи и как можно ближе к началу диска.
  • 4. При работе в Windows swap-файл лучше размещать на разделе с файловой системой FAT32, при этом не забывать, что она менее надежна, чем NTFS.
  • 5. При наличии достаточно большого объема оперативной памяти (более 2Гб) на малонагруженной системе можно вообще отказаться от файла подкачки.

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

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

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

В семействе операционных систем Microsoft Windows используется файл pagefile.sys для хранения вытесненных из оперативной памяти страниц. Место под файл должно быть выделено заранее, размер можно указать самостоятельно или же доверить выбор операционной системе.

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

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

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

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

Виртуальный адрес при сегментной организации памяти может быть представлен парой (g, s), где g - номер сегмента, а s - смещение в сегменте. Физический адрес получается путем сложения начального физического адреса сегмента, найденного в таблице сегментов по номеру g, и смещения s.

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

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

Заменяя размер виртуальной памяти (файла подкачки), надо соблюдать следующие правила:
  • не размещать его на разделе диска, где стоит операционная система, использовать другой, менее загруженный раздел;
  • отводить под файл подкачки место, в полтора раза превышающее ОЗУ. Например, память объемом 2 Гб, значит, файл подкачки задайте 3000 Мб.
Нажмите кнопку «Пуск» – откроется «Главное меню». В нем кликните на строке «Компьютер» правой кнопкой мыши. Откроется новое меню, выберите в нем «Свойства».


Откройте в окне «Система» подпункт «Дополнительные параметры системы». Выполнить это можно по-другому: «Пуск» – «Панель управления» – «Система».


Открыто окно «Свойства системы». Теперь на вкладке «Дополнительно» откройте «Параметры» в разделе «Быстродействие».


В открытом окне «Параметры быстродействия» перейдите на вкладку «Дополнительно». Кликните кнопку «Изменить» в разделе «Виртуальная память».


В открывшемся окошке вносим все необходимые изменения. С пункта «Автоматически выбирать объем файла подкачки» снимите галочку. Выбирайте диск, наименее загруженный. На пункт «Указать размер» поставьте переключатель, измените для файла подкачки его максимальный и исходный размер. Задавать вы можете такие параметры, которые вам нужны, не забывая, что исходный размер файла должен быть больше оперативки в полтора-два раза. Кликните кнопку «Задать».


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


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

Виртуальная память – это часть объема жесткого диска, выделяемая системой при нехватке оперативной памяти для повышения быстродействия. При этом данные, которые на данный момент не используются компьютером, перемещаются в так называемый файл подкачки. Размер этого файла совпадает с объемом виртуальной памяти. Как правило, для нормального функционирования системы размер файла подкачки должен в 1,5 раза превышать объем оперативной памяти. Но если пользователь часто играет в компьютерные игры со сложной графикой или 3D-анимацией, или сам создает сложные программы, то размер файла должен быть увеличен вдвое, а то и втрое относительно оперативной памяти.Подключение виртуальной памяти позволяет более рационально использовать ресурсы оперативной памяти, перемещая второстепенные данные во вторичное хранилище. При этом процессы, идущие одновременно, работают изолированно, «не зная» друг о друге.Различают два способа реализации виртуальной памяти: страничная и сегментная. При страничной реализации память делится на области одинакового объема (страницы), которые принимаются за единицу памяти. Работающий процесс отправляет запрос к памяти по адресу, содержащемуся в виртуальной памяти. Адрес представляет собой номер страницы и смещение в ней. Система может сбросить на жесткий диск страницу, которая давно не использовалась.При сегментной организации виртуальная память делится на сегменты произвольного размера. При обращении процесса к памяти часть сегментов перемещается в оперативную память , а часть остается на жестком диске. Для каждого сегмента может быть назначен определенный уровень прав доступа. Работа сегментной памяти аналогична страничной, но обладает меньшей скоростью доступа.В большинстве случае увеличение виртуальной памяти происходит автоматически, но бывают ситуации, когда пользователю необходимо сделать это вручную. Однако в этом случае нужно иметь в виду, что быстродействие системы может превысить допустимые и компьютер, наоборот, станет работать гораздо медленнее.Ручное увеличение виртуальной памяти производится на Панели управления в разделе «Система» или «Система и ее обслуживание». По команде «Изменить параметры» появляется окно «Свойства системы», в котором нужно выбрать вкладку «Дополнительные». В разделе «Быстродействие» - кнопку «Параметры». В окне «Параметры быстродействия» - вкладка «Дополнительно», «Виртуальная память » -> «Изменить». Чтобы увеличить объем файла подкачки, необходимо снять галочку с команды «Автоматически выбирать объем файла подкачки» и задать необходимое значение.

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

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

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

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

Она организована либо как файл подкачки или сегментация. Большинство систем используют таблицы страниц для перевода виртуальных адресов прикладных программ, в физические адреса, используемые процессором для выполнения инструкций. Таблица хранит записи для отображения виртуального адреса в физический адрес. Системы могут иметь одну страницу таблицы для всей системы или отдельные страницы таблицы для каждой прикладной программы. Таким образом, файл подкачки может быть определён как процесс перемещения неактивных виртуальных страниц памяти на диск и их восстановление в реальной памяти по запросу. Существуют различные алгоритмы, чтобы выбрать, какие страницы должны быть перенесены на жесткий диск, а какие должны быть сохранены.Очень немногие системы используют концепцию сегментации для реализации виртуальной памяти . В сегментации, память делится на переменную размера сегментов. Номер сегмента и смещение внутри него, вместе образуют виртуальный адрес. Если процессор хочет конкретный элемент данных, он сначала ищет число своего сегмента в таблице, чтобы найти дескриптор сегмента. Дескриптор сегмента содержит информацию, которая является смещением в пределах сегмента и она меньше длины сегмента, а если нет, генерируется прерывание, чтобы сообщить, где находится сегмент. Если процессор не в состоянии найти сегмент в основной памяти, он генерирует аппаратное прерывание, побуждая операционную систему обратиться к файлу подкачки в сегменте. Операционная система выполняет поиск сегментов, которые не были в использовании в течение длительного времени и отправляет их свопы из основной памяти, чтобы освободить место для новых сегментов,которые необходимо прочитать.Как увеличить виртуальную память?

Здесь пошаговое руководство, как увеличить виртуальную память компьютера. (Только для ОС Windows):

Нажмите на меню «Пуск», а затем перейдите к панели управления.
Выберите производительность и обслуживание, и под ним, сделайте выбор системы.
Выберите параметры на вкладке Дополнительно в разделе под названием «Представление».
На вкладке Дополнительно в разделе Виртуальная память, выберите изменить.
В списке дисков [метка тома] выберите диск, содержащий файл подкачки, размер которого вы хотите изменить.
В разделе Размер файла подкачки для выбранного диска установите флажок в — размер по заказу.
Вы можете выбрать объем памяти, который вы хотите зарезервировать для виртуальной памяти, введя начальный и максимальный размер.
Нажмите на кнопку set
Перезагрузите компьютер при появлении запроса.

Если вы найдёте ваш компьютер работающий медленно, то увеличение виртуальной памяти не поможет, так как это может быть просто результат ‘перегрузки’ компьютера. Перемешивание блоков виртуальной памяти между оперативной памятью и дисками потребляет большинство времени компьютера, тем самым вызывая пробуксовки. Хотя хорошо разработанные программы могут помочь решить эту проблему в определенной степени, окончательное излечение — это установить больше оперативной памяти.

(Пока оценок нет)
Понравилась статья? Поделиться с друзьями: