Previous Topic: About the DebuggerNext Topic: Debugging Process


Debugger Features

High Level of Control

The online debugger allows you to maintain a high level of control over the debugging process. With the debugger, you can:

Each of these functions is discussed below.

Setting Breakpoints

Breakpoints are temporary program interruptions that you can set at any address within a program or dialog that complies with debugger validation rules, as described in "Valid Breakpoints" later in this chapter.

At runtime, the debugger takes control at these breakpoints, and program execution is temporarily suspended. While execution is suspended, you can perform a variety of activities before returning control to the DC/UCF system or resuming execution of the program.

Displaying and Modifying Storage Values

You can examine storage values in any area, assuming that you have the security necessary to access the area. (Traditional error-handling routines and dumps supply information only after an error occurs or a program finishes executing.)

You can modify storage values and then execute the program to test the modifications.

The ability to examine and modify storage values in any area makes the debugger a very powerful tool.

Therefore, it's important to use debugger security to control access to storage.

Note: For information on the security methods used by the debugger, see CA IDMS Security Administration Guide.

Snapping Tasks and Storage Areas

You can create dumps for a task or for a specific area; the dumps are written to the DC/UCF log. From the log you can make a hard copy of storage contents and then examine them at your leisure.

Trapping Abends

The debugger automatically takes control when an instruction causes an abend in the module being debugged, allowing you to examine storage and to take appropriate action.

Managing Program Execution

The debugger also provides you with a flexible tool for managing an executing program. Under the control of the debugger during runtime: