Caterpillar

Daily Thought - 2024-05-13

< back to list

Yesterday, I was musing about how I can implement breakpoints more efficiently, by deploying new code on the fly that implements the breakpoint (or deploy code that no longer implements it, when removing one). Turns out, perhaps unsurprisingly, that this is how debuggers work anyway! At least where hardware support for debugging is not available.

This technique is called "software breakpoints". I found some documentation of GDB internals that explains it.

<< previous thoughtnext thought >>