ab6
Active targets
Contents|Index|Previous|Next
Active targets
There are three classes of targets: processes, core files, and executable files.
GDB can work concurrently on up to three active targets, one in each class.
This allows you to (for example) start a process and inspect its activity without
abandoning your work on a core file.
For example, if you execute ‘
gdb a.out’, then the executable file, a.out, is the only active target. If you designate a core file as well—presumably
from a prior run that crashed and coredumped—then GDB has two active targets and
uses them in tandem, looking first in the corefile target, then in the
executable file, to satisfy requests for memory addresses. (Typically, these two
classes of target are complementary, since core files contain only a program’s
read-write memory—variables and so on—plus machine status, while executable files
contain only the program text and initialized data.)
When you type
run, your executable file becomes an active process target as well. When a
process target is active, all GDB commands requesting memory addresses refer to that
target; addresses in an active core file or executable file target are obscured
while the process target is active.
Use the
core-file and exec-file commands to select a new core file or executable target (see Commands to specify files). To specify as a target a process that is already running, use the attach command (see Debugging an already-running process).
0