There is "How Debuggers Work: Algorithms, Data Structures, and Architecture" by Jonathan B. Rosenberg, Wiley, 1996. Rosenberg is/was VP of C++ and Internet Products and before that, Project Manager for Debuggers.
I have only skimmed the book, so I may be unfairly characterizing it. My impression is that there is a lot of good material, but I'm unsure of how generally applicable it is. The content of the chapters seem to be about things you need to think about when implementing a debugger rather than solutions. I don't think this is a defect; it's just that you'll be disappointed if you're expecting a solution rather than a direction.
Ch 1: introduction and principles
Ch 2: overview of debugger architecture
Ch 3 & 4: underlying infrastructure
Ch 5: how a debuggee is controlled
Ch 6 data structurs & algorithms for breakpoints and single-stepping
Ch 7 & 8: stack traces, disassembling, inspecting program variables
Ch 9: mutlithreaded debugging
Ch 10: debugging GUIs
Ch 11: special uses of debuggers
Ch 12: debugging optimized code
http://www.wiley.com/Corporate/Website/Objects/Products/0,9049,37386,00.html
|