Стр.память

Содержание

Слайд 2

Сегментно – страничное преобразование адреса в IA - 32 Селектор сегмента

Сегментно – страничное преобразование адреса в IA - 32

Селектор сегмента

Смещение

Дескриптор сегмента
Сегмент

Линейное

адресное пространство

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

Вход

Дескриптор страницы

Директория

Таблица

Смещение

Базовый адрес сегмента

Страница

Директория страниц

Физическое адресное пространство

Сегментное преобразование

Страничное преобразование

Физический адрес

Таблица страниц

Логический адрес

Глобальная таблица дескрипторов

CR3

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

Базовый адрес

Слайд 3

Сегментные регистры в IA - 32 CS GS SS DS ES

Сегментные регистры в IA - 32

CS

GS

SS

DS

ES

FS

Дескриптор сегмента кода

Дескриптор сегмента стека

Дескриптор сегмента

данных

Дескриптор дополнительного сегмента данных

Дескриптор дополнительного сегмента данных

Дескриптор дополнительного сегмента данных

Видимая часть

Скрытые (Теневые) регистры

Индекс

RPL

TI

Запрашиваемый уровень привилегии

Индикатор таблицы дескрипторов; 0 – GTD, 1 - LDT

Слайд 4

Преобразование логического адреса в линейный Селектор сегмента Логический адрес 15 0

Преобразование логического адреса в линейный

Селектор сегмента

Логический адрес

15

0

Таблица дескрипторов

Дескриптор сегмента

Смещение (Эффективный адрес)

+

Базовый

адрес

31

0

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

Слайд 5

Селектор сегмента Индекс 15 0 T I RPL 1 2 3

Селектор сегмента

Индекс

15

0

T
I

RPL

1

2

3

Индекс – указывает на один из 8192 дескрипторов в глобальной

(GDT) или локальной (LDT) таблице.
TI – указывает тип таблицы дескрипторов; 0 – GDT, 1 – текущая LDT.
RPL – запрашиваемый уровень привилегии дескриптора.
Слайд 6

Обобщенный формат дескриптора сегмента в IA - 32 P DPL S

Обобщенный формат дескриптора сегмента в IA - 32

P

DPL

S

Тип

База 23 : 16

База

15 : 00

Предел сегмента 15 : 00

23

13

22

21

20

19

15

16

31

12

11

8

7

0

4

14

15

16

31

0

0

G − бит гранулярности (0 −размер сегмента от 1 байта до 1 Мбайта, 1 − от 4 Кбайт до 4 Гбайт с шагом 4 Кбайт) ;
D/B − Размер по умолчанию (0 − 16-ти битовый сегмент; 1 − 32-х битовый сегмент);
AVL − Сегмент доступен для системного ПО;
P − Бит присутствия сегмента в оперативной памяти;
DPL − Уровень привилегии дескриптора;
S − Тип дескриптора (0 − системный, 1 − сегмент кода или данных);

S =1

&

сегмент кода. С – бит подчинённости. При С=1 CPL = PL программы, передавшей управление.

12

Слайд 7

Типы сегментов

Типы сегментов

Слайд 8

Формат дескриптора отсутствующего сегмента в IA - 32 Доступно 0 DPL

Формат дескриптора отсутствующего сегмента в IA - 32

Доступно

0

DPL

S

Тип

Доступно

13

15

16

31

12

11

0

7

0

4

14

31

0

0

Бит P = 0

Доступно

Слайд 9

Формат дескриптора PDE (4 Кбайта) G P S 0 A P

Формат дескриптора PDE (4 Кбайта)

G

P
S

0

A

P
C
D

P
W
T

U
/
S

R
/
W

P

0

1

2

3

4

5

6

7

8

Avail

9

11

12

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

31

Avail Доступно системному программисту

G Страница отмечена

как глобальная (игнорируется)

A Бит обращения (активности)

PCD Запрещает (1), разрешает (0) кэширование страницы или стр. таблицы. Этот бит игнорируется, если установлен флаг CD (cache disable) в CR0.

PWT Сквозная (1), обратная (0) запись при кэшировании страницы или стр. таблицы. Этот бит игнорируется, если установлен флаг CD (cache disable) в CR0.

PS Размер страницы (0 – страница 4Кбайта)

U/S Пользователь/Супервизор

P Бит присутствия.

Слайд 10

Формат дескриптора PTE (4 Кбайта) G PA T D A P

Формат дескриптора PTE (4 Кбайта)

G

PA
T

D

A

P
C
D

P
W
T

U
/
S

R
/
W

P

0

1

2

3

4

5

6

7

8

Avail

9

11

12

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

31

Avail Доступно системному программисту

G Страница отмечена как

глобальная. Если этот бит вместе с флагом PGE (page global enable) в регистре CR4 установлен в 1, то дескрипторы, соответствующие этой странице и располагающиеся в буфере TLB, при записи в CR3 или переключении задач как недостоверные не помечаются. Это защита часто используемых страниц от удаления «их» дескрипторов из TLB.

A Бит обращения

PCD Запрещает (1), разрешает (0) кэширование страницы или стр. таблицы

PWT Сквозная (1), обратная (0) запись при кэшировании страницы или стр. таблицы

PAT Индекс атрибутов таблицы страниц

U/S Пользователь/Супервизор

P Бит присутствия

D (Dirty) Бит записи (изменения)

Слайд 11

Формат дескриптора PDE (4Мбайта) и 32 – разрядным адресом G P

Формат дескриптора PDE (4Мбайта) и 32 – разрядным адресом

G

P
S

D

A

P
C
D

P
W
T

U
/
S

R
/
W

P

0

1

2

3

4

5

6

7

8

Avail

9

11

12

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

31

Avail Доступно

системному программисту

G Страница отмечена как глобальная

A Бит обращения (активности)

PCD Запрещает (1), разрешает (0) кэширование страницы или стр. таблицы. Этот бит игнорируется, если установлен флаг CD (cache disable) в CR0.

PWT Сквозная (1), обратная (0) запись при кэшировании страницы или стр. таблицы. Этот бит игнорируется, если установлен флаг CD (cache disable) в CR0.

PS Размер страницы (0 – страница 4Кбайта)

U/S Пользователь/Супервизор

P Бит присутствия.

Резервные

P
A
T

13

21

22

PAT Индекс атрибутов таблицы страниц

Слайд 12

Страничное преобразование (размер страницы 4 Кбайта) Директория Таблица Смещение Линейный адрес

Страничное преобразование (размер страницы 4 Кбайта)

Директория

Таблица

Смещение

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

Вход

PDE
(Page Directory Entry)

CR3 (PDBR)

Вход

PTE
(Page Table

Entry)

Слово

Страница
(4Кбайта)

32*

10

0

11

12

21

22

31

10

12

20

1024 PDE ∗ 1024 PTE = 220 страниц

*32 бита, выровненные на 4-Кбайтовую границу.

Слайд 13

Страничное преобразование (размер страницы 4 Мбайта) Директория Смещение Вход Слово Страница

Страничное преобразование (размер страницы 4 Мбайта)

Директория

Смещение

Вход

Слово

Страница
(4Мбайта)

CR3 (PDBR)

32*

*32 бита, выровненные на 4-Кбайтовую

границу.

0

21

22

31

10

22

10

1024 PDE = 1024 Страницы

Слайд 14

Формирование адреса в IA-32 Смещение База (BP, SP) Индекс (SI, DI)

Формирование адреса в IA-32

Смещение

База (BP, SP)

Индекс (SI, DI)

Масштабный множитель 1, 2,

4, 8

x

+

0

31

31

0

32

32

32

3-x входовой SM
сложение по mod 32

Шаг 1

Адрес в команде (логический адрес)

Смещение внутри сегмента (исполнительный, эффективный адрес)

Слайд 15

Формирование адреса в IA-32 Шаг 2 Проверка границ сегмента и прав

Формирование адреса в IA-32

Шаг 2

Проверка границ сегмента и прав доступа

+

База сегмента

Регистр

сегмента

База сегмента

Граница сегмента

Атрибуты, G,D,P, DPL, S, R(W), A

Нарушение

31

0

0

15

Исполнительный (эффективный) адрес

32

32

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

Дескриптор сегмента

нормально

ошибка

Слайд 16

Формирование адреса в IA-32 Шаг 3 Индекс каталога Смещение в стр.

Формирование адреса в IA-32

Шаг 3

Индекс каталога

Смещение в стр.

Индекс табл. стр.

31

0

11

12

21

22

Регистр CR3

База

табл. стр.

+

База страницы

Слово.

+

+

Страница

Таблица страниц

Директория входов (каталог)

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

32

Физический адрес

10

10

12

Слайд 17

Виртуальное адресное пространство IA-64 Виртуальный адрес 0 От 4К до 256М

Виртуальное адресное пространство IA-64

Виртуальный адрес

0

От 4К до 256М страниц

0

63

3

8 виртуальных регионов

261

байт на регион

218 - 224 виртуальных адресных пространств

Слайд 18

TLB Преобразование виртуального адреса в IA-64 Регистры регионов РИД rr0 rr1

TLB

Преобразование виртуального адреса в IA-64

Регистры
регионов

РИД

rr0

rr1

rr2

rr7

Ид. региона

Ключ

НВР

Номер Вирт. Стр. (НВС)

Права

Номер Физич.. Стр.

(НФС)

Номер Вирт. Стр. (НВС)

Смещение

63

61

60

0

Хеш

Поиск

Поиск

Поиск

Номер Физич.. Стр. (НФС)

Смещение

Поиск

24

24

3

Регистры ключей защиты

pkr0

pkr1

pkr2

0

62

НВР

Номер Вирт. Стр. (НВС)

Смещение

Виртуальный адрес

Физический адрес

Слайд 19

Защита. Можно ли увидеть? Можно ли получить доступ? RRX # виртуал.

Защита. Можно ли увидеть? Можно ли получить доступ?

RRX

# виртуал. стр.

смещение

# виртуал.

стр.

RID

права

ключ

ключ1

ключ2

ключ3

ключ4

ключ5

Регистры ключей защиты

ркзn

ркз0

Уровень привилегии. Тип доступа.

TLB

Ключи защиты увеличивают кпд буфера TLB при работе с большими базами данных

Регистры регионов

Обращение

Разрешено?