Debugger Concepts

To build on the Visual Studio debug package, you need to be familiar with the architectural concepts used in designing the package.

In This Section

  • Debug Session
    Explains the role of a session in the debugging architecture.

  • Servers (Visual Studio SDK)
    Defines what a server is in terms of debugging architecture, in both abstract and physical terms.

  • Port Suppliers
    Defines what a port supplier is in terms of debugging architecture.

  • Ports
    Defines what a port is in terms of debugging architecture.

  • Processes
    Defines what a process is in terms of debugging architecture.

  • Program Nodes
    Defines a program node in terms of debugging architecture, including how it can identify itself and the process it is running in.

  • Programs
    Defines a program in terms of debugging architecture.

  • Threads
    Defines the characteristics of threads in terms of debugging architecture.

  • Stack Frames
    Defines a stack frame in terms of debugging architecture. A stack frame is an abstraction of a stack that provides the execution context of a thread.

  • Modules
    Defines a module, in terms of debugging architecture, as a physical container of code, such as an executable file or a DLL.

  • Breakpoints (Visual Studio SDK)
    Defines the three types of breakpoints—pending, bound, and error—in terms of debugging architecture.

  • Debugger Contexts
    Explains how the debug engine (DE) operates simultaneously within code, documentation, and expression evaluation contexts. Describes, for each of the three contexts, the location, position, or evaluation relevant to it.

  • Debugger Components
    Provides an overview of the Visual Studio Debugging components, which include the debug engine (DE), expression evaluator (EE), and symbol handler (SH).

  • Debugging Tasks
    Contains links to various debugging tasks, such as launching a program and evaluating expressions.