Debugger concepts
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
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 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 Defines the three types of breakpoints—pending, bound, and error—in terms of debugging architecture.
Related sections
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).
Debug tasks Contains links to various debugging tasks, such as launching a program and evaluating expressions.