| |||
| Home > ARM Debuggers for Windows and UNIX > About the ARM Debuggers > Debugger concepts | |||
This section introduces some of the concepts of that you need to be aware when debugging program images.
A debug agent is the entity that performs the actions requested by the debugger, such as setting breakpoints, reading from memory, or writing to memory. It is not the program being debugged, or the ARM Debugger itself. Examples of debug agents include the EmbeddedICE interface, Multi-ICE, the ARMulator, and the Angel Debug Monitor.
The Remote Debug Interface (RDI) is a procedural interface between a debugger and the image being debugged, through a debug monitor or controlling debug agent. RDI gives the debugger core a uniform way to communicate with:
a controlling debug agent or debug monitor linked with the debugger
a debug agent executing in a separate operating system process
a debug monitor running on ARM-based hardware accessed through a communication link
a debug agent controlling an ARM processor through hardware debug support.