What is a remote debugger?
A remote debugger consists of a host program running on your PC; which provides the debugger user interface, symbol tables, etc.; and a (usually) small monitor program running on the actual target processor. The two programs communicate via RS-232 or some other medium. “Remote” in this case usually means only a few feet of cable connecting the two devices. The term was coined to distinguish two-computer debugging from the case where the debugger runs on the same computer as the program being debugged. The target monitor usually implements only a few primitive commands such as memory read and write, register read and write, and execute. The advantage of this approach is that the target monitor can be kept simple and small, because it doesn’t need to contain disassembler tables, ASCII command parsers and the like. Small size also leaves as much of the processor address space as possible for your application program. Some newer processors have built-in debugging resources that you may be