Break Point

MySprtlty·2022년 7월 12일
0

gdb

목록 보기
4/12
post-thumbnail

🏷️Break Point

  • 프로그램의 수행을 멈추도록 지정한 곳을 의미한다.
  • break point를 건 행의 명령을 수행하기 전에 멈춘다.
  • 다음은 break point와 관련된 명령들이다.

📌b

  • b명령으로 break point를 지정할 수 있다.

    • 🖇️cf. b stands for break point
  • b [파일명:] [행 번호 | 함수명|±오프셋] [조건식]

  • 🔍ex)

    명령어설명
    b funcfunc함수의 시작 부분에 break point를 건다.
    b 1010행에 break point를 건다.
    b file.c:funcfile.c 파일의 func함수 시작 부분에 break point를 건다.
    b file.c:10file.c 파일의 10행에 break point를 건다.
    b +7현재 행에서 +7행에 break point를 건다.
    b -7현재 행에서 -7행에 break point를 건다.
    b *0x80490000x8049000주소에 break point를 건다.
    b 10 if a == 010행에 break point를 거는데, a가 0일때만 멈춘다.
  • b 명령에서 조건식을 사용하면 break를 거는 조건을 설정할 수 있다.

    • 🔍ex) b 10 if a > 0

📌info b

  • info b 명령으로 현재 설정되어 있는 break point를 볼 수 있다.
  • info명령은 정보를 출력할 때 사용하는 명령이다.
    • info명령은 다른 정보를 출력할 때도 자주 사용하므로, 꼭 알아둔다.
  • 출력 내용 중, 좌측에 Num은 break point 고유번호를 의미한다.

📌condition

  • condition 명령으로 이미 설정된 break point에 조건을 부여할 수 있다.
  • condition {break point 고유번호} {조건식}
  • 🔍ex) condition 2 a == 0
    • 2번 break point는 a변수의 값이 0일때만 동작한다.

📌cl

  • cl 명령은 break point를 지우는 명령이다.

    • 🖇️cf. cl stands for clear
  • cl func

  • 🔍ex)

    명령어설명
    cl funcfunc 함수의 시작 부분의 break point를 지운다.
    cl 1010행의 break point를 지운다.
    cl file.c:funcfile.c의 func함수 시작 부분의 break point를 지운다.
    cl file.c:10file.c 10행의 break point를 지운다.

📌d

  • d 명령은 모든 break point를 지운다.
    • 🖇️cf. d stands for delete

📌enable과 disable

  • enabledisable로 기능을 잠시 on/off 할 수 있다.

  • enabledisable로 break point를 on/off하는 것이 가능하다.

    • 🖇️cf. break point외에 다른 기능도 on/off가 가능하기에 잘 기억해둔다.
  • enable <break point 고유번호>

  • disable <break point 고유번호>

  • 🔍ex)

    명령어설명
    disable 22번 break point를 잠시 끈다.
    enable 22번 break point를 다시 켠다.
profile
2Co 4:7

0개의 댓글