실행을 시작하고 멈추는 제어
프로그램의 동작에 영향을 주는 조건을 지정해 실행하고 원하는 조건에서 멈추게 할 수 있다. 중단한 시점의 내부 상태를 조사해 오류가 어떻게 발생했는지 살핀다. 충돌한 프로그램이 당시 무엇을 하고 있었는지 분석하는 용도로도 사용한다.
상태 변경을 통한 조사
관측만 하는 것이 아니라 프로그램 안의 값을 바꾸는 등의 시험을 할 수 있다. 한 오류의 영향을 조정한 뒤 실행을 이어 가며 다른 동작을 확인하는 방식이다. 실행 제어와 상태 검사를 결합해 문제의 원인을 좁힌다.
대상 환경과 언어
GDB와 같은 장비에서 실행하는 프로그램뿐 아니라 다른 장비의 원격 대상이나 시뮬레이터도 다룬다. 여러 UNIX 계열과 Windows 및 macOS에서 사용할 수 있다. C와 C++ 및 Go와 Rust 등 여러 언어의 디버깅을 지원한다.