How Debuggers work: algorithms, data structure, and architecture
A total guide to debuggers: what they do, how they work, and how to use them to produce better programs
"Debuggers are the magnifying glass, the microscope, the logic analyzer, the profiler, and the browser with which a program can be examined."-Jonathan B. Rosenberg
Debuggers are an indispensable tool in the development process. In fact, during the course of the average software project, more hours are spent debugging software than in compiling code. Yet, not many programmers really know how to constructively interpret the results they get back from debuggers. And even fewer know what makes these complex suites of algorithms and data structures tick. Now in this extremely accessible guide, Jonathan B. Rosenberg demystifies debuggers for programmers and shows them how to make better use of debuggers in their next projects.
Taking a hands-on, problem-solving approach to a complex subject, Rosenberg explains how debuggers work and why programmers use them. Most importantly, he provides practical discussions of debugger algorithms and procedures for their use, accompanied by many practical examples. The author also discusses a wide variety of systems applications, from Microsoft's Win32 debug API to a large parallel architecture.
Visit our Web site at: http://www.wiley.com/compbooks/
67 pages matching thread in this book
Results 1-3 of 67
What people are saying - Write a review
We haven't found any reviews in the usual places.
HARDWARE DEDUGGER FACILITIES
11 other sections not shown
Other editions - View all
algorithm allow architecture array basic branch delay slot branch instruction breakpoint instruction byte call stack cause child process compiler compiler optimization complete created data structures debug API debug event debug information debuggee process debuggee stops debugger's debugging support decode disassemble environment example exception fault frame pointer function call global GUI applications GUI debugger hardware implement Input internal breakpoint interpreter Java kernel line number linker loop mapping methods Module load multithreaded notification object occur operating system optimizations physical breakpoint problems procedure processor program counter ptrace record registers remote RemoteField RemoteValue requires return address RISC routine run-time saved scope setting a breakpoint shows single single-step Smalltalk source code source statement source view special breakpoint specified stack frame stack view String symbol table system call thread tion TOOLHELP trace typically UNIX user interface variable watchpoint windows message