Р. С. Ниязова, А. К. Сексенбаева Аппаратные средства реализации механизма виртуальной памяти


Скачать 81.34 Kb.
НазваниеР. С. Ниязова, А. К. Сексенбаева Аппаратные средства реализации механизма виртуальной памяти
Дата публикации07.02.2014
Размер81.34 Kb.
ТипДокументы
referatdb.ru > Информатика > Документы

Р.С. Ниязова, А.К. Сексенбаева


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


(Евразийский национальный университет им Л.Н.Гумилева, г. Астана)
В этой статье дано описание аппаратных средств реализации механизма виртуальной памяти, его преимущества, приведены характеристики и параметры механизма виртуальной памяти.

Механизм виртуальной памяти существуют практически во всех компьютерах. Использование механизма виртуальной памяти обеспечивает такие преимущества:

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

  2. ВП представляет каждой программе одинаковое адресное пространство для кода и данных.

  3. ВП обеспечивает схему защиты данных одной программы в памяти от доступа другой программы.

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

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



Рисунок 1. Механизм виртуальной памяти

Характеристики и параметры механизма виртуальной памяти

Параметры механизма виртуальной памяти (см. рис.1) очень похожи на параметры кэш-памяти, сохраняется практически полная аналогия, только это другой уровень иерархии памяти:

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

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

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

  4. Объем ВП частично определяется объемом адресного пространства используемого ЦП.

  5. Внешний накопитель на магнитных дисках (НМД) является самым нижним уровнем иерархии при использовании механизма ВП. Он используется как память файловой системы, так и для хранения страниц (сегментов) ВП.

Существует три основных типа механизма ВП:

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

2) ВП с сегментной организацией, где размеры сегментов могут варьироваться.

3) Комбинированная ВП с сегментами и страницами различного размера (число размеров при этом ограничено).

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

Второй и третий тип ВП использует сегменты разного размера от 1К байт до 4Г байт. Сегментация программ требует сложного компилятора, который должен разбивать данные на модули разного размера в зависимости от их использования программой.

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

Для иллюстрации работы механизма ВП рассмотрим структуру на рисунке 2 .

Рисунок 2
Таблица страниц в механизме виртуальной памяти

В данной структуре используется 32-разрядный виртуальный адрес в котором имеется два поля, 12 младших бит предназначены для смещения внутри страницы размером в 4К байт и 20 старших бит используются для номера виртуальной страницы. Адрес физической памяти содержит 28 бит, в которых те же самые 12 младших бит используются для смещения и оставшиеся 16 старших для номера физической страницы или фрейма страницы. Таким образом, имеется виртуальное пространство адресов размерностью в 4 Г байт и физическое пространство адресов размерностью в 256 М байт, что 16 раз меньше. Таблица страниц размещается в специальной области основной памяти, отведенной для операционной системы, и обеспечивающей защиту от доступа прикладных программ.

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

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

Работа данной структуры в целом похожа на механизм косвенной адресации, когда для определения истинного адреса данных необходимо вначале извлечь из основной памяти сам адрес и затем произвести доступ к данным. Поэтому использование ВП теоретически предполагает снижение скорости доступа к памяти из-за дополнительной выборки физического адреса из таблицы страниц в памяти. Таким образом ЦП может генерировать виртуальные адреса, размерность которых может превышать размерность физической памяти, механизм ВП будет обеспечивать поиск необходимых страниц во вторичной памяти на НМД и их загрузку в свободные фрагменты основной (физической памяти).

Механизм ВП построен на группе алгоритмов, управляющих отображением и размещением страниц как в основной памяти , так и памяти НМД:

1) Алгоритмы размещения страниц в основной и вторичной памяти;

2) Алгоритмы замещения страниц в основной памяти;

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

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



Рисунок 3

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

Выходом из такой ситуации является введение в структуру еще одного специализированного кэша, в котором будут храниться недавно использованные элементы таблицы страниц, при повторном обращении к этим страницам доступ к таблице страниц в основной памяти не производится и физический адрес считывается из этого кэша. При этом задержка доступа к такому кэшу многократно меньше задержки доступа к основной памяти. Ввиду специализированности кэша для хранения только элементов таблицы страниц, его принято называть буфером быстрой трансляции (Translation Look-aside Buffer, TLB).

Структура механизма виртуальной памяти с буфером быстрой трансляции (далее ББТ) представлена на рисунке 4.


Рисунок 4

Механизм виртуальной памяти с кэшем и буфером быстрой трансляции адресов

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

Можно перечислить следующие стандартные способы:

  1. ЦП с механизмом ВП и ББТ должны генерировать адрес как можно раньше момента чтения (записи) данных для уменьшения числа тактов задержки при доступе в кэш-память,

  2. Доступ в кэш должен быть по возможности совмещен с доступом в ББТ и это возможно в связи с тем что биты смещения в странице (младшие биты адреса) могут быть использованы в качестве индекса для доступа к кэшу.

Однако это порождает некоторые проблемы, связанные с перекрытием поля индекса кэша и физического адреса (см.[1], с.51). Это приводит к тому, что старшие биты индекса кэша должны быть получены из физического адреса в результате адресной трансляции, и совмещение процесса доступа к ББТ и кэшу становится невозможным. Поэтому это принуждает к использованию в комплексе с механизмом ВП кэшей прямого отображения небольшого объема или кэшей с высокой степенью ассоциативности, если мы хотим увеличить объем кэша.
^ ПРИМЕР НЕСОВМЕСТИМОСТИ КЭША И МЕХАНИЗМА ВИРТУАЛЬНОЙ ПАМЯТИ

Рассмотрим пример (см.[1], с.51): при использовании механизма ВП с 4 К байт страницами и размерностью 4 Г байт попробуем совместить его с кэшем прямого отображения объемом 8 Кбайт и размером блока 32 байт.

Структура виртуального адреса выглядит следующим образом:


31 Номер виртуальной/ физической страницы 12

11 Смещение в странице 0

31 Адресный тэг 13

12 Индекс 5

4 Смещение в строке 0



Структура адреса при доступе к кэшу имеет несколько отличную структуру:

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

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

1) Увеличить размер страницы виртуальной памяти до 8 К байт;

2) Использовать двухканальный частично-ассоциативный кэш (уменьшив индекс на один бит)

3) Программное обеспечение может гарантировать, что бит 12 в виртуальном и физическом адресе будет иметь одно и тоже значение.
ЛИТЕРАТУРА


  1. Палташев Т.Т., Матвеев М. Иерархия памяти в современных микропроцессорах.2010. С.36-52



Ниязова Р.С. , Сексенбаева А.К.

Виртуалды жады жұмысы механизмінің iске асырылуының аппаратты құралдары

Бұл мақалада виртуалды жады жұмысы механизмінің аппаратты құралдарымен iске асырылуы, оның артықшылығы және виртуалды жады жұмысы механизмінің параметрлерiне сипаттамалар мен мінездемелер келтiрiлген.
Niyazova R.S., Seksenbaeva A.K.

Hardware of realization of the mechanism virtual memory

In this article the description of hardware of realization of the mechanism of virtual memory, its advantage is given, characteristics and parameters of the mechanism of virtual memory are resulted.

Похожие рефераты:

1. Программные, аппаратные, программно-аппаратные средства, обеспечивающие...
Программные, аппаратные, программно-аппаратные средства, обеспечивающие распознавание, запись, хранение и анализ информации о деятельности,...
Доклады «Микропроцессоры и аппаратные средства вычислительной техники мп и асвт»

5В070400-Есептеу техникасы және бағдарламалық қамтамасыз ету
Аппаратные средства ис-прак ауд 809-1 (профессор, д т н кафедра жетекшісі Синчев Б. К )
Вопросы к экзамену по дисциплине «Физические и аппаратные средства защиты и их проектирование»
Классификация методов защиты информации, особенности физических и аппаратных средств защиты информации (сзи)
Вопросы к экзамену по дисциплине «Физические и аппаратные средства защиты и их проектирование»
Классификация методов защиты информации, особенности физических и аппаратных средств защиты информации (сзи)
Зав отделом электронных информационных ресурсов гу "Республиканская...
Возможности технологической реализации виртуальной справочной службы в библиотеке
Конституционно-правовой механизм реализации свободы совести в Республике Беларусь
Данные звенья также можно рассматривать в качестве элементов механизма реализации свободы совести
Потенциал и регулятивные принципы комплексного использования современных...
Ий виртуальной реальности в процессе организации физического эксперимента. К программно-педагогическим средствам обучения, основанным...
Новости законодательства
Организация feim, в партнерстве с gcwa (Глобальной коалицией по женщинам и спиду), объявили о начале виртуальной консультации по...
Аппаратное обеспечение компьютерной графики
Устройства ввода графических изображений, их основные характеристики. Сканеры, классификация и основные характеристики. Дигитайзеры....

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
referatdb.ru
referatdb.ru
Рефераты ДатаБаза