Виртуальная память

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

Применение механизма виртуальной памяти позволяет:

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

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

История


Wikimedia Foundation . 2010 .

Смотреть что такое "Виртуальная память" в других словарях:

    Ресурсы оперативной или внешней памяти, выделяемые прикладной программе операционной системой. Физическое расположение виртуальной памяти на реальных носителях может не совпадать с логической адресацией данных в прикладной программе.… … Финансовый словарь

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

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

    Ресурсы оперативной или внешней памяти, выделяемые прикладной программе операционной системой. Физическое расположение виртуальной памяти на реальных носителях может не совпадать с логической адресацией данных в прикладной программе.… … Словарь бизнес-терминов

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

    виртуальная память - virtualioji atmintis statusas T sritis automatika atitikmenys: angl. virtual memory; virtual storage vok. virtueller Speicher, m rus. виртуальная память, f pranc. mémoire virtuelle, f … Automatikos terminų žodynas

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

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

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

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

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

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

Объем виртуальной памяти компьютера регулируется в параметрах быстродействия. Чтобы добраться до них, зайдите в меню Пуск , перейдите в Панель управления , затем в раздел Система и выберите пункт Дополнительные параметры системы .

В окне Свойства системы перейдите на вкладку Дополнительно и нажмите на кнопку Параметры в разделе Быстродействие .

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

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

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

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

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

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

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

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

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

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

Если не хватает памяти, невозможно запустить другие программы, а в тех, что запущены, могут быть проблемы при работе с большим количеством данных. Но, из-за использования виртуальной оперативной памяти ваш компьютер может работать медленнее. Это произойдёт, если ему придётся использовать память на жёстком диске. Как всегда получается компромисс между скоростью и количеством обрабатываемых системой данных.

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

Использование виртуальной оперативной памяти в современных операционных системах.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Если вы хотите увеличить объем виртуальной памяти на своей системе, то ознакомьтесь с пошаговой инструкцией. (Для Windows XP):

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

Если вам кажется, что ваш компьютер работает слишком медленно, то увеличение виртуальной памяти не поможет, это может быть только результатом «пробуксовки». Слишком частая перетасовка блоков виртуальной памяти между реальной памяти и дисков потребляет большую часть времени работы компьютера, тем самым вызывая пробуксовку. Хотя и существует некоторые меры, оптимизирующие работу виртуальной памяти, все же лучшим решением будет увеличение объема оперативной памяти.

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

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


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


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


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


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


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


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