Память. Верхний уровень

Отладочные адресные регистры. Отладочный управляющий регистр (DR7)

Отладочные адресные регистры (DR0-DR3)

Каждый из этих регистров содержит линейный адрес одной из четырех контрольных точек. При разрешенной подкачке страниц эти адреса транслируются в физические адреса по алгоритму подкачки страниц. Условие каждой контрольной точки определяется содержимым регистра DR7.

Отладочный управляющий регистр (DR7)

Отладочный управляющий регистр задает вид доступа к памяти, связанный с каждой контрольной точкой. Каждый адрес в регистрах DR0 - DR3 соответствует полю R/W0 - R/W3 в регистре DR7.

Процессор интерпретирует их следующим образом:

00 - прерывание только при выполнении команды;

01 - прерывание только при записи данных;

10 - не определено;

11 - прерывание при чтении и записи данных, но не при выборке команды.

Поля LEN0 - LEN3 регистра DR7 задают размер позиции памяти, для которой установлены контрольные точки. Может быть задан размер в 1, 2 или 4 байта. Поля длины интерпретируются следующим образом:

00 - длина один байт;

01 - длина два байта;

10 - не определено;

11 - длина четыре байта.

Младшие восемь битов регистра DR7 (поля от L0 до L3 и от G0 до G3) по отдельности разрешают условия контрольных точек в четырех адресах. Существует два уровня их разрешения: локальный (от L0 до L3) и глобальный (от G0 до G3).

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



Sitelinkx by eXtro-media.de
Яндекс.Метрика