gdb.info: Using Agent Expressions

Go forward to Varying Target Capabilities
Go backward to Bytecode Descriptions
Go up to Agent Expressions
Go to the top op gdb

Using Agent Expressions

Here is a sketch of a full non-stop debugging cycle, showing how agent
expressions fit into the process.
   * The user selects trace points in the program's code at which GDB
     should collect data.
   * The user specifies expressions to evaluate at each trace point.
     These expressions may denote objects in memory, in which case
     those objects' contents are recorded as the program runs, or
     computed values, in which case the values themselves are recorded.
   * GDB transmits the tracepoints and their associated expressions to
     the GDB agent, running on the debugging target.
   * The agent arranges to be notified when a trace point is hit.  Note
     that, on some systems, the target operating system is completely
     responsible for collecting the data; see *Note Tracing on
     Symmetrix::.
   * When execution on the target reaches a trace point, the agent
     evaluates the expressions associated with that trace point, and
     records the resulting values and memory ranges.
   * Later, when the user selects a given trace event and inspects the
     objects and expression values recorded, GDB talks to the agent to
     retrieve recorded data as necessary to meet the user's requests.
     If the user asks to see an object whose contents have not been
     recorded, GDB reports an error.