What is a Debugger?

A debugger is a program which runs other programs in such a way as to let you see every step of program execution. A debugger will let you stop the program while it is running, change the program or program variables, and start the program running again.

Debuggers

DebuggerLicensePlatform(s)
GDB - The GNU DeBuggerGPLUnix, Windows
Soft-IceCommercialWindows
D86: Eric Isaacson's Shareware DebuggerSharewareDOS, Windows
OllyDbgSharewareWindows
DebuggyFreewareWindows
MacsBugFreewareMac OS

Books on Debuggers

How Debuggers Work: Algorithms, Data Structures, and Architecture
How Debuggers Work: Algorithms, Data Structures, 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.

Debugging with GDB: The GNU Source-Level Debugger
Debugging with GDB: The GNU Source-Level Debugger
The GNU Debugger allows you to see what is going on "inside" a program while it executes - or what a program was doing at the moment it crashed. GDB supports C, C++, Java, Fortran and Assembly among other languages; it is also designed to work closely with the GNU Compiler Collection (GCC).

The GNU Debugger Program has four special features that helps you catch bugs in the act:
  • It starts your program for you, specifying anything that might affect it's behavior.
  • Makes your program stop under specified conditions.
  • Examines what happened when the program stopped.
  • Allows you to experiment with changes to see what effect they have on the program.
This book will show you:
  • setting and clearing breakpoints
  • examining the stack, source files and data
  • examining the symbol table
  • altering program execution
  • specifying a target for debugging
  • how to control the debugger
  • how to use canned command sequences
  • how to install GDB
  • and much more!
This manual is written for programmers. It is designed so someone can begin utilizing GDB after just reading the first chapter, or read the whole manual and master the program. Synopsis of ideas and extensive examples are given.


Bookmark What is a Debugger?

Latest Blog Posts


English English GermanGerman SpanishSpanish FrenchFrench ItalianItalian PortuguesePortuguese RussianRussian DutchDutch
GreekGreek HindiHindi JapaneseJapanese KoreanKorean ChineseChinese Chinese (Simplified)Chinese (Simplified) ArabicArabic

Copyright 2009 Tech-FAQ. All rights reserved. Privacy Policy.