Books & Videos

Table of Contents

  1. Chapter 1 SOME PRELIMINARIES FOR BEGINNERS AND PROS

    1. Debugging Tools Used in This Book

    2. Programming Language Focus

    3. The Principles of Debugging

    4. Text-Based vs. GUI-Based Debugging Tools, and a Compromise Between Them

    5. Main Debugger Operations

    6. Online Help

    7. Introductory Debugging Session

    8. Use of Startup Files

  2. Chapter 2 STOPPING TO TAKE A LOOK AROUND

    1. Mechanisms for Pause

    2. Overview of Breakpoints

    3. Keeping Track of Breakpoints

    4. Setting Breakpoints

    5. Extended GDB Example

    6. Persistence of Breakpoints

    7. Deleting and Disabling Breakpoints

    8. More on Viewing Breakpoint Attributes

    9. Resuming Execution

    10. Conditional Breakpoints

    11. Breakpoint Command Lists

    12. Watchpoints

  3. Chapter 3 INSPECTING AND SETTING VARIABLES

    1. Our Main Example Code

    2. Advanced Inspection and Setting of Variables

    3. Setting Variables from Within GDB/DDD/Eclipse

    4. GDB's Own Variables

  4. Chapter 4 WHEN A PROGRAM CRASHES

    1. Background Material: Memory Management

    2. Core Files

    3. Extended Example

  5. Chapter 5 DEBUGGING IN A MULTIPLE-ACTIVITIES CONTEXT

    1. Debugging Client/Server Network Programs

    2. Debugging Threaded Code

    3. Debugging Parallel Applications

    4. Extended Example

  6. Chapter 6 SPECIAL TOPICS

    1. What If It Doesn't Even Compile or Load?

    2. Debugging GUI Programs

  7. Chapter 7 OTHER TOOLS

    1. Making Good Use of a Text Editor

    2. Making Good Use of the Compiler

    3. Error Reporting in C

    4. Better Living with strace and ltrace

    5. Static Code Checkers: lint and Friends

    6. Debugging Dynamically Allocated Memory

  8. Chapter 8 USING GDB/DDD/ECLIPSE FOR OTHER LANGUAGES

    1. Java

    2. Perl

    3. Python

    4. Debugging SWIG Code

    5. Assembly Language

  1. COLOPHON