Trace32

TAEWOO HA·2023년 8월 17일
0

트러블 슈팅

목록 보기
1/4

Trace32

Y

y : sYmbol

v

d

  • 메모리 데이터 덤프
  • elf파일 로딩 , d.load

명령어 사용법

심볼 브라우즈

  • 키워드를 잘 설정해야함

y.l.line

  • 소스 위치를 파악할 수 있음

v.v : 전역 변수의 값 or 메모리 컨텐츠의 값 캐스팅

  • 주소가 출력됨 (주소를 모를 때)
    (void (*)()) &schedule = 0xFFFFFFD174D4FDF0 = schedule ->
    • 시작주소 확인

d.l __schedule

  • y.l.line + 주소
    • 해당 주소에 대한 심볼정보 , 소스코드 위치 확인 가능
  • *심볼(symbol)"은 함수, 변수, 구조체 등의 이름을 가리키는 식별자

Data List (d.l)

  • r : 레지스터 정보 확인
  • 회색바 : 현재 프로그램카운터가 가리키는 주소정보

X0 0 X16 0 ^S+ ^Stack_+
X1 FFFFFF805D66DAC0 X17 0
X2 0 X18 0
X3 0 X19 4
X4 2 X20 FFFFFFD174E01B70
X5 0 X21 FFFFFFD17506C6C0
X6 FFFFFFD1755AE778 X22 FFFFFF806CEB3000
X7 FFFFFFD1755AE778 X23 0A
X8 FFFFEFFF X24 FFFFFFC00932BDE0
X9 FFFFFFD17499D104 X25 FFFFFFD174E01B30
X10 FFFFFFD175556778 X26 0
X11 7463657269642067 X27 0
X12 45207972746E6520 X28 FFFFFF805D66DAC0
X13 4E4F495450454358 X29 FFFFFFC00932BCD0
X14 0 X30 FFFFFFD17499D104

X15 00000055B19F3330 PC FFFFFFD17499D9A8

CPSR 03C5 N I I SS
EL1h Z F F IL
nsec C _ A A

                V _  D D

Current ELx: SP FFFFFFC00932BCD0
ELR 0

                   SPSR                0

  • X30에 있는 주소를 d.l 0xFFFFFFD17499D104 해보기

  • 회색바가 표시가 안되는 이유 : X30레지스터는 현재 PC 주소를 호출하고 돌아갈 주소를 가리킴
    • 어떤 함수를 호출하고 복귀할 주소를 담고있음

DATA_DUMP

  • 원하는 어드레스의 타깃 메모리 값을 읽거나 쓸 수 있음

  • 해당 주소의 메모리 컨텐츠 확인 가능

  • 16진수 , 디버깅이 어려움

  • d.v %y.ll + 주소
    • 메모리 컨텐츠에 있는 정보를 심볼이 보이는 64 format으로 보기

d.v %y.ll 0xffffff806cf0bff0 // 메모리 덤프의 내용을 64비트단위로 심볼정보가 보이는 상태로 보겠다.

mmu.pt.list 0x0000007fa528cb20
mmu.pt.dump 0x0000007fa528cb20

레지스터

r.undo

r.s : 레지스터 설정

v.l

  • 로컬변수 파악 가능
  • v.f 에서 up down

1개의 댓글

comment-user-thumbnail
2023년 8월 17일

많은 것을 배웠습니다, 감사합니다.

답글 달기

관련 채용 정보