A count of BBs executed by a program, which serves as a coarse-grained measure of how much code has run so far. Represented by an integer starting at
1and increasing as execution progresses. See Time notation.
A location at which the program will be stopped and control returned to the debugger. See Breakpoints.
- Bundled GDB¶
A custom build of GDB packaged as part of a release of UDB.
- data breakpoint¶
Another term for watchpoint.
- data race¶
A type of software defect in which multiple threads or processes are racing to update a data structure, and the correctness of the behaviour depends on which one wins the race.
- deferred-recording mode¶
A standardised debug data format. See DWARF.
- event log¶
- execution history¶
A record of the behaviour of a program in a form that can be replayed by UDB.
- inferior process¶
A program being debugged.
- inferior call¶
The Keyserver is Undo’s license server. This component needs to be installed if UDB is to be used with a floating license. The machine running UDB needs to have network access to the machine running the Keyserver.
An Undo product including live-record, a command-line tool for recording the execution history of a program and saving it as a LiveRecorder recording, and the LiveRecorder API that allows any program to record and save its own execution history.
- LiveRecorder recording¶
- program counter¶
A register whose value is the address of an instruction to be executed. When the program is stopped in the debugger, its value is typically the address of the next instruction to be executed. See Time notation.
A Python function registered with UDB that formats values from the program being debugged. The
info pretty-printercommand lists the registered pretty-printers.
- record mode¶
In this mode the program’s execution history is being recorded so that it can be saved or replayed. As long as execution proceeds forwards, the program remains in record mode, but reverse-execution commands and time-travel commands need to switch to replay mode.
- replay mode¶
- reverse debugger¶
- reverse debugging¶
An alternative name for time travel debugger / debugging.
- reverse-execution commands¶
Memory that can be simultaneously accessed by multiple programs. See shared memory.
A form of inter-process communication that interrupts the execution of the recipient. See signal.
- symbol file¶
A file containing information about the symbols in an executable file that may be useful for debugging that executable, including the symbol names, and the source files and line numbers where they originated. Symbol files may be created alongside executable files at compilation time, or extracted from executables containing symbols. Symbol files may also contain additional DWARF-formatted debugging information.
- system call¶
A request from a user-space program to the operating system. See system call.
- temporary breakpoint¶
- Thread Fuzzing¶
A configuration of the Undo Engine in which it varies the times at which it switches between program threads in record mode, to attempt to reproduce data races and other concurrency bugs. See Thread Fuzzing.
- time-travel commands¶
Undo’s interactive time travel debugger.
- UDB session¶
A former name for UDB.
- UndoDB Server.¶
A former name for udbserver.
- Undo Engine¶
The technology implementing record, replay, and time travel debugging.
A former name for LiveRecorder.
- volatile mode¶
In this mode, the program is executing instructions but they are neither being recorded nor replayed, and any state changes will be discarded when the program returns to replay mode. See Inferior calls.
- wall-clock time¶