Поделиться через


ta (трассировка по адресу)

Команда ta выполняет программу до достижения указанного адреса, отображая каждый шаг (включая шаги в вызываемой функции).

Режим пользователя

[~Thread] ta [r] [= StartAddress] StopAddress 

Режим ядра

ta [r] [= StartAddress] StopAddress 

Параметры

Нить
Указывает потоки для продолжения выполнения. Все остальные потоки заморожены. Дополнительные сведения о синтаксисе см. в разделе "Синтаксис потока". Потоки можно указать только в пользовательском режиме.

r
Включает и отключает отображение регистров и флагов. По умолчанию отображаются регистры и флаги. Вы можете отключить отображение регистрации с помощью команд tar, pr, tr или .prompt_allow -reg. Все эти команды управляют тем же параметром и использованием любого из них переопределяет любое предыдущее использование этих команд.

Вы также можете отключить отображение регистрации с помощью команды l-os. Этот параметр отличается от других четырех команд. Чтобы управлять отображением регистров и флагов, используйте команду rm (Register Mask).

StartAddress
Указывает адрес, в котором начинается выполнение отладчика. Если вы не используете StartAddress, выполнение начинается с инструкции, на которую указывает указатель инструкции. Дополнительные сведения о синтаксисе см. в разделе "Синтаксис адреса и диапазон адресов".

StopAddress
Указывает адрес, на котором останавливается выполнение. Этот адрес должен соответствовать точному адресу инструкции.

Среда

Позиция Description
Режимы режим пользователя, режим ядра
Целевые объекты только динамическая отладка
Платформы all

Дополнительная информация

Дополнительные сведения о связанных командах см. в разделе "Управление целевым объектом".

Замечания

Команда ta приводит к началу выполнения целевого объекта. Это выполнение продолжается до достижения указанной инструкции или точки останова.

Обратите внимание , что если вы используете команду ta в режиме ядра, выполнение останавливается при обнаружении инструкции по указанному виртуальному адресу в любом виртуальном адресном пространстве.

Во время этого выполнения все шаги отображаются явным образом. Если функция вызывается, отладчик также выполняет трассировку с помощью этой функции. Таким образом, отображение этой команды напоминает то, что вы видите, если вы неоднократно выполняли t (trace) до тех пор, пока счетчик программы не достиг указанного адреса.

Например, следующая команда явно выполняет трассировку по целевому коду до достижения возвращаемого адреса текущей функции.

0:000> ta @$ra