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