ta(주소 추적)
ta 명령은 지정된 주소에 도달할 때까지 프로그램을 실행하여 각 단계(호출된 함수 내의 단계 포함)를 표시합니다.
사용자 모드
[~Thread] ta [r] [= StartAddress] StopAddress
커널 모드
ta [r] [= StartAddress] StopAddress
매개 변수
스레드
실행을 계속할 스레드를 지정합니다. 다른 모든 스레드는 고정됩니다. 구문에 대한 자세한 내용은 스레드 구문을 참조 하세요. 사용자 모드에서만 스레드를 지정할 수 있습니다.
r
레지스터 및 플래그 표시를 켜고 끕니다. 기본적으로 레지스터와 플래그가 표시됩니다. tar, pr, tr 또는 .prompt_allow -reg 명령을 사용하여 레지스터 표시를 사용하지 않도록 설정할 수 있습니다. 이러한 모든 명령은 동일한 설정을 제어하고 이러한 명령의 이전 사용을 재정의합니다.
l-os 명령을 사용하여 레지스터 표시를 사용하지 않도록 설정할 수도 있습니다. 이 설정은 다른 4개의 명령과는 별개입니다. 표시되는 레지스터 및 플래그를 제어하려면 rm(마스크 등록) 명령을 사용합니다.
StartAddress
디버거가 실행을 시작하는 주소를 지정합니다. StartAddress를 사용하지 않으면 명령 포인터가 가리키는 명령에서 실행이 시작됩니다. 구문에 대한 자세한 내용은 주소 및 주소 범위 구문을 참조 하세요.
StopAddress
실행이 중지되는 주소를 지정합니다. 이 주소는 명령의 정확한 주소와 일치해야 합니다.
환경
항목 | 설명 |
---|---|
모드 | 사용자 모드, 커널 모드 |
대상 | 라이브 디버깅만 |
플랫폼 | all |
추가 정보
관련 명령에 대한 자세한 내용은 대상 제어를 참조하세요.
설명
ta 명령을 사용하면 대상이 실행되기 시작합니다. 이 실행은 지정된 명령에 도달하거나 중단점에 도달할 때까지 계속됩니다.
참고 커널 모드에서 ta 명령을 사용하는 경우 가상 주소 공간의 지정된 가상 주소에서 명령이 발견되면 실행이 중지됩니다.
이 실행 중에는 모든 단계가 명시적으로 표시됩니다. 함수가 호출되면 디버거도 해당 함수를 통해 추적합니다. 따라서 이 명령의 표시는 프로그램 카운터가 지정된 주소에 도달할 때까지 t(추적)를 반복적으로 실행한 경우 표시되는 것과 유사합니다.
예를 들어 다음 명령은 현재 함수의 반환 주소에 도달할 때까지 대상 코드를 통해 명시적으로 추적합니다.
0:000> ta @$ra