24523

Страничное распределение оперативной памяти

Доклад

Информатика, кибернетика и программирование

В общем случае размер виртуального адресного пространства не является кратным размеру страницы поэтому последняя страница каждого процесса дополняется фиктивной областью. Чтобы упростить механизм преобразования адресов размер страницы обычно выбирается равным 2n: 512 1024 и т. Смежные виртуальные страницы не обязательно располагаются в смежных физических страницах. Запись таблицы называемая дескриптором страницы включает следующую информацию: номер физической страницы в которую загружена данная виртуальная страница; признак...

Русский

2013-08-09

90.7 KB

5 чел.

Вопрос 28. Страничное распределение оперативной памяти.

§5.3.2.2.Страничное распределение памяти.

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

Рис. 5.7. Страничное распределение памяти

Вся оперативная память машины также делится на части такого же размера, называемые физическими страницами (или блоками). Чтобы упростить механизм преобразования адресов, размер страницы обычно выбирается равным 2n: 512, 1024 и т. д.

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

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

Запись таблицы, называемая дескриптором страницы, включает следующую информацию:

- номер физической страницы, в которую загружена данная виртуальная страница;

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

- признак модификации страницы, который устанавливается в единицу всякий раз, когда производится запись по адресу, относящемуся к данной странице;

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

- признак запрета выгрузки страницы.

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

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

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

- дольше всего не использовавшаяся страница;

- первая попавшаяся страница;

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

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

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

Рассмотрим механизм преобразования виртуального адреса в физический при страничной организации памяти. Виртуальный адрес при страничном распределении может быть представлен в виде пары (p, s), где p – номер виртуальной страницы процесса (нумерация страниц начинается с 0), а s – смещение в пределах виртуальной страницы (рис. 5.8).

Учитывая, что размер страницы равен 2k, смещение s может быть получено простым отделением k младших разрядов в двоичной записи виртуального адреса. Оставшиеся старшие разряды представляют собой двоичную запись номера страницы p (при этом неважно, является страница виртуальной или физической).

Рис. 5.8. Структура виртуального адреса страницы

Например, размер страницы 1 кбайт = 210 байт, следовательно k=10. Из двоичной записи адреса 50718 = 101 000 111 0012 можно определить, что он принадлежит второй странице, номер которой в двоичном выражении равен 102 и смещен относительно ее начала на 1 000 111 0012 байт (рис. 5.9).

Рис. 5.9. Двоичное представление адресов

При каждом обращении к оперативной памяти аппаратными средствами выполняются следующие действия (рис. 5.10).

1. На основании начального адреса таблицы страниц (содержимое регистра адреса таблицы страниц), номера виртуальной страницы (старшие разряды виртуального адреса) и длины записи в таблице страниц (системная константа) определяется адрес нужной записи в таблице.

2. Из этой записи извлекается номер  n  физической страницы.

3. К номеру физической страницы присоединяется смещение s (младшие разряды виртуального адреса).

Рис. 5.10. Преобразование виртуального адреса в физический

при страничной организации памяти

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

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

Использование в пункте 3 того факта, что размер страницы равен 2k, позволяет применить операцию конкатенации (присоединения) вместо более длительной операции сложения, что уменьшает время получения физического адреса, а значит повышает производительность компьютера.

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

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


 

А также другие работы, которые могут Вас заинтересовать

31188. Морские и сейсмические косы и набортные сейсморазведочные станции 31.5 KB
  Морские сейсмические косы предназначены для приема сейсмических колебаний регистрирующей аппаратурой расположенной на геофизическом судне. По существу цифровые сейсмические косы это морской аналог совокупности полевых сейсморегистрирующих моделей телеметрической системы сбора информации. В настоящее время на большинстве геофизических судов используются цифровые сейсмические косы.
31189. Обобщенная структура телеметрических станций 54.5 KB
  Вспомогательное оборудование станции служит для установки параметров ПО технического обслуживания и текущего ремонта всей системы и состоит из тестирующего устройства полевых модулей и модуля контроля линейной расстановки а также диагностического и ремонтного комплексов осциллографа и зарядного устройства. К блоку управления станцией всегда подключается ограниченное число линейных интерфейсных модулей.Этот модуль всегда выполняет следующие функции: осуществляет самотестирование и диагностику; присваивает адреса полевым коммутационным и...
31190. Общая характеристика современных систем наблюдений 32.5 KB
  Поэтому на начальном этапе применения трехмерных систем наблюдений широкое распространение получили такие упрощенные системы наблюдения которые позволяли в реальных условиях того времени выполнять Сейсморазведочные работы по технологии 30. По мере накопления опыта работ с такими системами и получения признания их высокой результативности были предложены и приняты к опробованию достаточно сложные регулярные системы наблюдений. В настоящее время регулярные площадные системы наблюдений достаточно высокой сложности являются приоритетными в...
31191. Общая характеристика систем наблюдений 36 KB
  Взаимное расположение пунктов возбуждения ПВ и пунктов приема ПП сейсмических волн в изучаемой среде принято называть системой наблюдений. Последовательность взаимного перемещения ПВ и ПП на поверхности наблюдений называют технологией наблюдений. В зависимости от структуры формы и взаимного расположения линий пунктов возбуждения ЛПВ и линий пунктов приема ЛПП сейсмических волн различают точечные профильные и пространственные системы наблюдений.
31192. Основные понятия теории проектрования систем наблюдений 3D 48 KB
  Поэтому такие системы наблюдений следует проектировать таким образом чтобы они по возможности обеспечивали достаточно равномерное покрытие всей площади работ регулярной сетью общих средних глубинных точек. В основе построения всех площадных систем наблюдений используются в качестве базовых элементов два понятия понятия о непродольном сейсмическом профиле и площадном распределении приемников и или источников Мешбей 1985; Потапов 1987. При работах на суше наиболее часто употребляются системы наблюдений использующие крестовые...
31193. Основы методики и технологии работ методом общей глубинной точки 35.5 KB
  Метод общей глубинной точки как уже говорилось был предложен в 1950 г. С каждой трассой связаны три координаты профиля: пункта возбуждения s пункта приема r и средней точки m. Кроме того для ряда задач удобно и полезно рассматривать расстояния h от средней точки до источника или приемника.
31194. Принцип цифровой магнитной записи 30 KB
  При таком виде представления для записи конкретного числа необходимо фиксировать в строго конкретном месте только числа а.нуль или единица и одно число нуль или единица для характеристики знака числа. EXP0NENT 0FRCTION где SIGN численное значение двоичного разряда определяющее знак числа для положительного числа SIGN=0 для отрицательного числа SIGN=1; FRCTION мантисса двоичного числа представляющая собой последовательность нулей и единиц чисел а начиная с первого слева ненулевого значения; EXPONENT показатель степени 2...
31195. Принципы квантования сигналов по времени амплитуде 36 KB
  Точность представления аналоговых сигналов в дискретной форме тем выше чем меньше интервал квантования. В теории передачи информации для обоснования выбора шага квантования аналоговых сигналов обычно используют теорему В.5 fmx где fmx максимальная частота спектра сигналов.