Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Advanced Interactive Debugger (AID)

Product characteristics

AID is an efficient and powerful debugging system which allows users to diagnose errors, test programs, and provisionally correct programming errors under the BS2000 operating system.

AID supports symbolic debugging of programs written in COBOL, C, C++, Assembler, FORTRAN, and PL/1 as well as non-symbolic debugging at machine-code level of programs written in any BS2000 programming language.

Symbolic debugging of a COBOL program means that symbolic names from a COBOL compilation unit can be used for addressing. Non-symbolic debugging at machine-code level is generally required whenever symbolic testing proves insufficient or impossible as a result of lacking diagnostic information.

Some of the basic functions that can be called using special AID commands are listed below:

  • execution monitoring

    • specific types of source statements in the compilation unit

    • selected events in the program run

    • declared program addresses

  • access to data items and modification of item contents

  • management of AID output files and libraries

  • detection of global declarations

  • control of

    • output data sets

    • AID output volumes

There is also an additional HELP function

  • for all AID commands and operands

  • for the meaning of AID messages and possible actions to be taken.

The user can control program execution by instructing AID to interrupt a program run and execute certain subcommands at defined addresses, during the execution of selected types of statements, or when specific events take place. A subcommand is an individual command or a sequence of AID and BS2000 commands. It is defined as an operand of an AID command. Starting with version V2.0, the execution of subcommands can be made dependent on conditions. This enables dynamic monitoring of program states and the values of variables.

AID also provides facilities for the modification of data items and the output of elementary data items, group items, or entire Data Divisions of COBOL programs.

An AID command can be used to display the level of the call hierarchy at which the program was interrupted and the modules which are contained in the CALL or INVOKE nesting.

AID can be used to process a running program as well as to analyze a memory dump in a disk file. It is possible to switch between these two options within a single debugging session, e.g. in order to compare data in an executing program with the data obtained from a memory dump.

Description of functions

AID is a diagnostic and debugging tool for testing application programs at source language level (high level language debugger).

The debugging and diagnostic functions available for the testing of COBOL compilation units compiled with COBOL2000 are:

  • Output and setting of user-defined data: 

    Data defined in the user program can be addressed interactively, subject to the COBOL rules pertaining to qualification, uniqueness, indexing, and scope.
    The data itself is converted and edited in accordance with the attributes specified in the user program.

  • Symbolic dump: 

    All or selected data from dynamically nested programs can be edited and output according to the current program nesting.

  • Setting of test points: 

    Test points at which specific actions are to be executed can be set or reset via source references or markers in the program (paragraphs, sections, etc.). Markers are referenced according to the qualification rules applicable in COBOL.

  • Tracing of the program at statement level: 

    Dynamic tracing of the program is controllable via statement classification (e.g. procedure trace, control flow trace, assignment trace...). AID outputs the source reference of executing statements that correspond to the statement classification.

Documentation

“AID - Core Manual” [20]
“AID - Debugging of COBOL Programs” [8]
“AID - Debugging on Machine Code Level” [21].