gdb의 기본적인 명령어 입니다.


 순번

명령어 

설명 

1 

gdb 파일명 

해당 파일을 gdb로 열기 

2 

list = ("l")

gcc 컴파일 시 -ggdb 옵션을 지정한 경우 소스 확인 가능 

3 

disas 주소/함수 

해당 함수를 디스어셈블해 실행 

4 

run = (r)

해당 파일을 실행 

5 

continue = ("c")

브레이크가 걸린 상태에서 계속 실행 

6 

break 주소/함수명 

주소나 함수에 브레이크 포인트를 걸기 

7 

x/32x 주소

주소에서 32개를 16진수로 출력(x/32s는 문자열) 

8  

info registers = ("i r")

레지스터의 값을 출력 

9 

nexti = ("n i")

함수 내부로 들어가면서 한 라인 실행 

10 

stepi = ("s i")

함수 내부로 들어가면서 한 라인 실행 

11 

help 

도움말 출력 

12 

backtrace 

프로그램 실행의 스택 추적 결과 출력 

13 

quit

종료


*7번 자세히..

- x/"범위""출력형식""범위의단위" "메모리주소 또는 함수명"

- 출력형식 : x (16진수), s (문자열), I (명령어)

- 범위의단위 : b (1byte), h(2byte), w(4byte), g(8byte)

 

*실행예제

ex) x/20wx $esp : esp가 가리키는 메모리부터 높은 주소쪽으로 4byte 씩 20개 출력

+ Recent posts