This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GDB's breakpoint internals


(Put simply, the things you learn when reading a book explaining how a debugger should work :-)

The `How Debuggers Work' [rosenberg] book describes a breakpoint implementation broken into two parts:

- high level user breakpoint list
This is what the user sees. One entry corresponds to each `break XXX' command. That high level breakpoint then maps onto 1 or more ...


- low level physical breakpoints (or watchpoints or ...)
One entry per physical breakpoint. When a breakpoint is hit, a reverse map back to each high-level breakpoint for the event is done, and then that breakpoint's handler is called.


I might be mistaken, but I don't think GDB implemented things this way. Instead, it has a single tangled table.

Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]