Debuggers in general
Debuggers are programs that can inspect a program's internal state at runtime, provided that the program has been compiled – debug symbols included. They rely on process introspection system calls such as ptrace in Linux. They allow you to pause the execution of a program at runtime. To achieve this, they provide a feature called a breakpoint. A breakpoint represents a suspension point in a running program. A breakpoint can be put on any function or line of code in the program. Once the debugger hits the breakpoint, it pauses and waits for the user to input further instructions. At this point, the program is not running and is in the middle of its execution. Here, you can examine the state of variables, the active stack ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access