Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

ЗИ при страничной адресации (конспект)

Поиск

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

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

 

 

 


 

15. Организация виртуальной памяти.
Виртуальная память — технология управления памятью ЭВМ, разработанная для многозадачных операционных систем. При использовании данной технологии для каждой программы используются независимые схемы адресации памяти, отображающиеся тем или иным способом на физические адреса в памяти ЭВМ. Позволяет увеличить эффективность использования памяти несколькими одновременно работающими программами, организовав множество независимых адресных пространств (англ.), и обеспечить защиту памяти между различными приложениями. Также позволяет программисту использовать больше памяти, чем установлено в компьютере, за счет откачки неиспользуемых страниц на вторичное хранилище (см. Подкачка страниц).

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

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

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

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

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

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


Рис.1 Страничная организация Виртуальной Памяти.
Виртуальные адреса делятся на страницы (page), соответствующие единицы в физической памяти образуют страничные кадры (page frames), а в целом система поддержки страничной виртуальной памяти называется пейджингом (paging). Виртуальный адрес в страничной системе упорядоченная пара (p,d), где p - номер страницы в виртуальной памяти, а d - смещение в рамках страницы p, где размещается адресуемый элемент. Система отображения виртуальных адресов в физические сводится к системе отображения виртуальных страниц в физические и представляет собой таблицу страниц, которая адресуется при помощи специального регистра процессора и позволяет определить номер кадра по виртуальному адресу.

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

Сегментно-страничная организация памяти требует более сложной аппаратурно-программной организации. На рисунке 2 подробно показан способ организации ВП с ССО. Адрес ячейки в данном случае складывается из 3х частей: первая содержит номер самого сегмента (S egment), по этому номеру машина обращается к сегментной таблице. Вторая часть адреса содержит номер искомой страницы (p age), которая находится внутри выбранного сегмента и третья смещение (l ength), по которому находится требуемый адрес. Pµ, обведенное в двойную рамку показывает математический адрес, а Pф физический. Как и при СО, смещение l переписывается в ячейку физического адреса без изменений.


Вверху рисунка, аббревиатурой N обозначен номер какой-нибудь программы пользователя. А0 с индексом 1 обозначает конкретный начальный адрес сегментной таблицы для данной программы. Сначала берется этот адрес и номер сегмента S из регистра математического адреса. Оба этих адреса складываются в сумматоре, который изображен в виде обведенного плюса. Получившийся адрес А1 + S является входом в сегментную таблицу (изображен в первой колонке сегментной таблицы). Далее, благодаря этому адресу, отыскивается соответствующий адрес страничной таблицы (А0 с индексом 2), который в свою очередь суммируется с номером искомой страницы p в сумматоре. Результирующая сумма есть вход в страничную таблицу. Структура страничной таблицы нам уже знакома.



Поделиться:


Последнее изменение этой страницы: 2016-08-06; просмотров: 411; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.189.170.227 (0.008 с.)