Stabs

Debugging data format


title: "Stabs" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["debugging-data-formats"] description: "Debugging data format" topic_path: "technology/software-engineering" source: "https://en.wikipedia.org/wiki/Stabs" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Debugging data format ::

stabs (sometimes written STABS) is a debugging data format for storing information about computer programs for use by symbolic and source-level debuggers. The information is stored in symbol table strings ("stabs").

History

Cygnus Support attributes the invention of stabs to for the Berkeley Pascal pdx debugger, however, he claims otherwise, stating stabs came with adb and sdb but could predate those. , who created pdx for his 1981 master's thesis and later developed it into dbx, states his doctoral adviser Michael L. Powell "contributed to the stabstrings design, especially to support Modula-2".

When stabs was created in the 1980s, the dominant object file format was a.out, which, unlike more recent formats such as Executable and Linkable Format (ELF), makes no provision for storing debugging information. Stabs works around this problem by encoding the information using special entries in the symbol table.

At one stage stabs was widely used on Unix systems, but the newer DWARF format has largely supplanted it.

References

References

  1. (1993). "Overview of Stabs". [[Cygnus Support]].
  2. Kessler, Peter B.. (2014-11-21). "RFR: 8065656: Use DWARF debug symbols for Solaris".
  3. (1990). "The Evolution of Dbx".

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

debugging-data-formats