Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NewОтветыОС_1.doc
Скачиваний:
37
Добавлен:
07.02.2015
Размер:
2.67 Mб
Скачать
  1. Стpуктуpа элемента таблицы стpаниц. Буфеp быстpого пpеобpазования.

Структура элемента таблицы страниц

Наиболее важным полем является Номер страничного блока - задачей отображения страниц является определение этой величины. бит Присутствия/отсутствия. Если бит=1, запись в ОЗУ, если = 0, вирт стран нет в ОЗУ. Биты Защиты говорят о том, какие разрешены виды доступа к этой странице. (R W X-чтение запись выыолнен),

Биты Изменения и Обращения отслеживают использование страницы. Когда

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

Буферы быстрого преобразования адреса (TLB)

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

Проблема: Большинство программ делает огромное количество обращений к небольшому количеству страниц, а не наоборот. => в таблице страниц только малая доля записей читается интенсивно, остальная часть едва ли вообще используется. Решение: компьютер снабжается небольшим аппаратным устройством - буфером быстрого преобразования адреса (TLB — Translation Lookaside Buffer), служащим для отображения виртуальных адресов в физические без прохода по таблице страниц.

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

Действит

Вирт

стр

Изменение

Защита

Странич

фрейм

1

1

1

1

1

1

1

1

140

20

130

129

19

21

860

861

1

0

1

1

0

0

1

1

RW

RX

RW

RW

RX

RX

RW

RW

31

38

29

62

50

45

14

75

циклический процесс, располагающийся в вирт стр 19, 20 и 21(код)

для чтения и выполнения. Обраб данные - 129 и 130. Индексы -140. Стек - 860 и 861.

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

обращение не нарушает биты защиты, страничный блок берется прямо из буфера

TLB, без перехода к таблице страниц. Если номер виртуальной страницы присут-

присутствует в буфере TLB, но инструкция пытается записать что-то на страницу, дос-

доступную только для чтения, формируется ошибка защиты точно так же, как это про-

происходило бы из самой таблицы страниц.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]