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

Автор работы: Пользователь скрыл имя, 17 Июня 2014 в 18:31, реферат

Краткое описание

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

Прикрепленные файлы: 1 файл

Виртуальная память это логическая память.doc

— 41.00 Кб (Скачать документ)

Все методы управления памятью имеет одну и ту же цель – хранить в памяти мультипрограммную смесь, необходимую для мультипрограммирования. Виртуальная память это логическая память, которое может не соответствовать ее физическому расположению. Виртуальная память – это увеличение общего объема памяти и организации множества адресных пространств памяти. Существует термин swap, означающий виртуальную память или файл подкачки. Для того чтобы обеспечить максимальную гибкость памяти система может перемещать страницы из физической памяти в файл подкачки и наоборот. Когда страница перемещается в физическую память, система обновляет карту память.  Когда система нуждается в свободной памяти, то выбирает оперативную память, к которой дольше всего не было обращений, и перемещает файл. Виртуальная память позволяет, упростить адресацию памяти, рационально управлять оперативной памятью компьютера  и изолировать процессы друг от друга. Во время работы память при содействии оборудования отображает виртуальные адреса, на которых хранятся данные. Управляя защитой и отображением, операционная система может обеспечивать отсутствие столкновений процессов или перезаписи данных. Виртуальная память представляет собой совокупность всей памяти как оперативной так внешней, имеющие нумерацию от нуля до предельного значения адреса. У большинства систем физической памяти намного меньше общего количество виртуальной памяти  содержимое памяти переводит, на диск. Постраничный перенос данных на диск освобождает физическую память, чтобы она могла использоваться другими процессами или операционной системой. Когда по виртуальному адресу той страницы, которая была перенесена на диск, память загружает информацию с диска в память. Размер виртуального адресного пространство зависит от аппаратной платформы. Объем машинного кода этого приложения равен 10000 байт. Это приложение требует 5000 байт для хранения данных и буферов ввода/вывода. А это значит, что для работы с этим приложением в памяти должно быть свободно 15000 байт, и если не хватит одного байта, то приложение не сможет запуститься и такое приложение называется адресным пространством. Это число уникальных адресов, необходимых для размещения  приложения и данных. Затем программисты пытались решить проблему, определяя, какие части приложения должны находиться в памяти в данный момент и назвали эту программу оверлеи. Таким образом, код, выполняемый только при инициализации, можно переписать,  используя  в процессе работы.  Программа оверлеи могла требовать для выполнения меньше памяти, но если в системе для нее не хватало памяти, то так же возникала ошибка, нехватки памяти. Например, 16-разрядный компьютер PDP-11/70 с 64 Кбайт логической памяти мог иметь до 2 Мбайт оперативной памяти. Операционная система этого компьютера обеспечивает защиту и перераспределением основной памяти между пользовательскими процессами. Существует несколько способов виртуальной памяти: свопинг, страничная и сегментная память.

Свопинг. 

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

Страничная память.

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

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

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

Архитектурные средства поддержки виртуальной памяти

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

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

Random Access Memory (RAM)

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

Кэш-память

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

Жесткий диск

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

Флэш-память

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

Read Only Memory (ROM)

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


Информация о работе Виртуальная память