OSDev Wiki
Advertisement

Регистры MMU[]

Регистр управления доступом к доменам состоит из 16 двухбитовых полей, каждое из которых соответствует своему домену: биты 1:0 относятся к домену 0, биты 3:2 — к домену 1 и так далее.

ARM CP15 R3

Регистр управления доступом к доменам

Каждое поле кодирует метод проверки прав доступа текущей программы к соответствующему домену:

  • 00 — доступ запрещён;
  • 01 — доступ разрешён, но контролируется устройством управления памятью в соответствии с битами AP, APX и NX записей таблиц переадресации;
  • 10 — зарезервировано;
  • 11 — доступ разрешён и не контролируется.

Подробнее о доменах сказано в подразделе «Управление доступом».

Регистры MPU[]

В версиях архитектуры MPU от PMSAv6 и старше регистр 3 сопроцессора CP15 для управления работой MPU не используется. В более ранних версиях он содержит биты управления буферизацией:

ARM CP15 R3 PMSAv5

Формат регистра управления буферизацией MPU

Разряды 31–8 при считывании имеют непредсказуемые значения. При записи они должны быть равны нулю или исходным значениям, прочитанному из регистра 2. Биты 7–0 разрешают или запрещают буферизацию для восьми областей, на которые память делится с помощью MPU.

При обращении к этому регистру поля CRm и opcode2 команд MRC и MCR должны быть указаны соответственно как c0 и 0.

Advertisement