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
指定執行停止的位址。 此位址必須符合指令的確切位址。
Environment
項目 | 說明 |
---|---|
模式 | 使用者模式、核心模式 |
目標 | 僅限即時偵錯 |
平台 | 全部 |
其他資訊
如需相關命令的詳細資訊,請參閱 控制目標。
備註
ta 命令會導致目標開始執行。 直到到達指定的指令或遇到斷點,才會繼續執行。
注意 如果您在核心模式中使用 ta 命令,當在任何虛擬位址空間中指定的虛擬位址遇到指令時,執行就會停止。
在此執行期間,所有步驟都會明確顯示。 如果呼叫函式,調試程式也會追蹤該函式。 因此,此命令的顯示類似於您在程式計數器到達指定位址之前重複執行 t (Trace) 時所看到的內容。
例如,下列命令會透過目標程式代碼明確追蹤,直到到達目前函式的傳回位址為止。
0:000> ta @$ra