Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MProc / M6 / Страничная организация памяти.doc
Скачиваний:
19
Добавлен:
16.04.2013
Размер:
197.12 Кб
Скачать

Режим pae– расширенной (36-разрядной) адресации

Если процессор работает в режиме формирования расширенных 36-разрядных адресов (в регистре CR4 установлено значение бита РАЕ=1), то процедура формирования физического адреса несколько осложняется (см. рис.$.4). Это связано с тем, что элементы каталога и таблиц увеличены для хранения дополнительных битов расширенного адреса, и таким образом, в каталоге и таблицах теперь меньше элементов.

Линейный адрес

31

30

29

21

20

0

Directory pointer

Directory

Offset

2

9

21

Таблица указателей

каталогов (Page Di­rectory Pointer Table

Каталог страниц (Page Directory)

2M-байтная страница

Физический

Элемент таблицы

Элемент

адрес

указателей (PDPT)

каталога (PDE)

Начало

Начало таблицы

Начало каталога

страницы

27

CR3 (PDPTE)

Рис. $.4б. Формирование 36-разрядного физического адреса при страничной организации памяти для 2MBстраниц.

При расширенной адресации, размеры элементов каталога и страниц увеличиваются вдвое и т.о. вдвое уменьшается количество элементов в каждой таблице и каталоге. В этом случае вводится дополнительная таблица указателей каталогов (PageDirectoryPointerTable), с помощью которой адресуется каталог разделов (при использовании стандартных страниц 4KB, рис.$.4а) или каталог страниц (при использовании расширенных страниц 2MB, рис.$.4б). Для обращения к таблице каталогов в линейном адресе выделяется 2-разрядное полеDirectory Pointer. В целом, процедура трансляции производится так же, как описано выше для формирования 32-разрядных адресов. Отличия состоят в том, что выполняется дополнительный этап трансляции с обращением к таблице каталогов, а также изCR3 передается не 20-битный адрес каталога страниц, а 27-битный адрес таблицы указателей каталогов страниц (см. рис. $2б).

Форматы элементов каталогов и таблиц, используемых при расширенной адресации, показаны на рис. $.5.

63

36

35

12

11

9

8

7

6

5

4

3

2

1

0

а)

Резерви­ровано (=0)

Базовый адрес каталога страниц

Avail

Резерви­ровано

P C D

P W T

Рез.

1

63

36

35

12

11

9

8

7

6

5

4

3

2

1

0

б)

Резерви­ровано (=0)

Базовый адрес таблицы страниц

Avail

0

0

0

A

P C D

P W T

U / S

R / W

P

63

36

35

12

11

9

8

7

6

5

4

3

2

1

0

в)

Резерви­ровано (=0)

Базовый адрес страницы

Avail

G

P A T

D

A

P C D

P W T

U / S

R / W

P

63

36

35

21

20

13

12

11

9

8

7

6

5

4

3

2

1

0

г)

Резерви­ровано (=0)

Базовый адрес страницы

Резерви­ровано (=0)

P A T

Avail

G

1

D

A

P C D

P W T

U / S

R / W

P

Рис. $.5. Формат элемента таблицы указателей каталогов страницPDPT(а), элемента каталога страницPDE(б), и элемента таблицы страницPTE(в) для 4KBстраниц, а также элементов таблицы указателей каталогов страницPDPT(а) и элементов каталога страницPDEдля 2MBстраниц (г) при 36-разрядном адресе

Элементы содержат 64 бита (часть из них резервирована), назначение которых аналогично соответствующим битам указателей при стандартной 32-разрядной адресации (рис.$.3). Указатели имеют поля, в которых хранятся старшие разряды 36-разрядных базовых адресов каталогов, разделов и страниц. С помощью страничной трансляции формируется 36-разрядный физический адрес инструкции или операнда.

Отметим, что расширенная разрядность адреса реализуется только при использовании страничной адресации, когда установлены значения битов PG=PAE=1.

Также отметим, что аналогично тому, что 4KBстраницы выровнены на границу 4KB, точно также 2MBи 4MBстраницы выровнены на границы 2MBи 4MBсоответственно.