Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПиП МПС(Ассемблер Левицкий экт 4) / MProc / M9 / Системная архитектура часть 4..doc
Скачиваний:
57
Добавлен:
16.04.2013
Размер:
751.1 Кб
Скачать

4.1.2. Регистры регионов (rr)

Каждый из восьми виртуальных регионов, ассоциирован с привилегированным регистром региона (RR–RegionRegister). Каждый регистр содержит идентификатор региона (RID–RegionIdentifier) и несколько других атрибутов региона (см. рис. 4.7). Значения, помещенные операционной системой в регистр региона, могут рассматриваться как совокупность идентификаторов адресного пространства процесса.

63

32

31

8

7

2

1

0

rv

rid

ps

rv

ve

32

24

6

1

1

Рис.4.7. Формат регистра региона

Регионы поддерживают операционные системы со множественным адресным пространством, за счет ухода от необходимости смывания TLBпри переключении контекста. Разделение между процессами организовано путем отображения общих глобальных или разделяемых идентификаторов регионов в рабочий набор регистров региона множества процессов. Все обращения к памятиIA-32 осуществляются через регистр региона 0.

Табл. 4.5 описывает поля регистра региона. Биты идентификатора региона (rid) от 0 до 17 должны быть реализованы во всех моделях процессоров. В некоторых моделях процессоров реализованы дополнительные биты. Дополнительные биты должны быть непрерывны, и начинаться с бита 18. Не реализованные биты должны быть зарезервированы. Для дальнейшей информации относительно размера идентификатора региона, реализованного в конкретной модели процессораItanium, посмотрите документацию, специфицирующую процессор.

Табл. 4.5. Поля регистра региона

Поле

Биты

Описание

rv

1,63:32

Зарезервировано

ve

0

VHPTWalkerEnable– разрешение обходчикаVHPT. Если – 1, то для региона разрешен обходчикVHPT, если – 0, то запрещен.

ps

7:2

PreferredPageSize– предпочтительный размер страницы. Выбирает биты виртуального адреса, используемые в хэш-функциях для наборно-ассоциативных таблицTLBилиVHPT. Кодируется как 2psбайтов. Процессор может делать существенную оптимизацию эффективности для регионов имеющих предпочтительный размер страницы.A

rid

31:8

Region Identifier – идентификатор региона. В течение вставокTLB, идентификатор региона для выбранного регистра региона используется для отметки трансляций к определенному адресному пространству. В течение просмотраTLB/VHPT, идентификатор региона используется для соответствующих трансляций и для распределения хэш-индексов среди наборовVHPTиTLB.

  1. О более детальном использовании этого поля см. раздел 4.1.6 «Хэширование VHPT».

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