Annotated Debugger Implementation Bibliography

This is a hierarchical annotated bibliography of resources related to the development and functioning of debuggers, with a particular emphasis on debugging Go executables and even more in particular about the Delve debugger.

Table of Contents

  1. Introductory material
  2. Delve specific resources
  3. Target layer resources
    1. 86x64 / AMD64
    2. Windows
    3. Linux
    4. Other
  4. Symbolic layer resources
  5. Miscellaneous stuff

Introductory material

Delve specific resources

Target Layer Resources

This lists reference useful for writing the “target layer” of a debugger, i.e. that part of the debugger that is responsible for managing the target process and manipulating its memory.

86x64 / AMD64

Windows

Linux

Other

Symbolic Layer Resources

This section contains anything pertaining interpreting debug symbols and extracting them from executable files.

For a modern debugger you only need to be concerned with three executable formats (PE, ELF and Mach-O) and two debug formats (DWARF and PDB). Anything else is of historical interest only at this point.

Miscellaneous stuff