Показанный на Рисунке 11-1 отладочный регистр состояния сообщает об условиях, выявленных во время генерирования отладочного исключения. Среди прочей информации, он сообщает, какая контрольная точки вызвала данное исключение.
Когда разрешенная контрольная точка генерирует исключение отладки, она загружает младшие четыре бита данного регистра (от B0 до B3), прежде чем войти в обработчик отладочных исключений. Бит B устанавливается, если условие, описанное битами DR, LEN и R/w истинно, даже если эта контрольная точка не разрешена битами L и G. Процессор устанавливает биты B для всех контрольных точек, для которых выполняются условия, установленные в момент генерации отладочного исключения, независимо от того, были ли они разрешены.
Бит BT связан с битом Т (отладочным битом ловушки) в TSS (формат TSS см. в Главе 6). Процессор устанавливает бит BT перед входом в отладочный обработчик исключений, если переключение произошло на задачу с установленным битом T в TSS. В регистре DR7 не существует бита, позволяющего разрешить или запретить данное исключение, бит Т в TSS является единственным разрешающим битом.
Бит BS связан с флагом TF. Бит BS устанавливается, если отладочное исключение произошло при пошаговом режиме выполнения (при установленном флаге TF). Пошаговый режим выполнения дает отладочное исключение с наивысшим приоритетом; когда бит BS установлен, любые прочие биты состояния отладки также могут быть установлены.
Бит BD установлен, если следующая команда будет читать или записывать один из восьми отладочных регистров, в то время как они используются встроенным эмулятором.
Отметим, что содержимое регистра DR6 никогда не очищается процессором. Чтобы избежать путаницы с идентификацией отладочных исключений, отладочный обработчик исключений должен перед возвратом очищать этот регистр.