Debugging a program running on one system while controlling the program from another system is known as remote debugging. The debugger supports remote debugging by allowing you to run the debugger user interface on one system, while running the debug engine on another system. The system running the debugger user interface is known as the local system. The system where the debug engine runs is known as the remote system.
When debugging a program remotely, you can start the debugger in one of two ways:
In both cases, a daemon will listen for a connection. Once a connection is made you can begin to debug your program.
Why use remote debugging
You might want to use remote debugging for the following reasons:
You can use the remote debug feature to debug this program on the other system, from your system. The user on the system running that program interacts with the program as usual (except where breakpoints or step commands introduce delays) and you are able to control the program and observe the program's internal behavior from your system.
It is easier to debug an application that uses graphics or has a graphical user interface when you keep the debugger user interface separate from that of the application. Your interaction (or another user's interaction) with the application occurs on the remote system, while your interaction with the debugger occurs on the local system.
You can use the remote debug feature to take advantage of the debugger user interface while debugging the remote application.
Restriction: This information applies to remote debugging between
workstation platforms only. For information for debugging an OS/390 or AS/400
program from a workstation, see the online for help for the Distributed Debugger
shipped with products that support OS/390 or AS/400.
Starting the debugger for debugging compiled languages
remotely
Starting the debugger for debugging interpreted Java
remotely
Starting the debugger user interface daemon