Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Symbols

&pagelevel(5)&pagelevel

Symbols are used to access the object being diagnosed (dump file or the active system) or the metadata of the DAMP program. Each symbol has a name beginning with a period, a relative address, a type and a length.

Symbols cannot be named freely, but must

  • be known to DAMP from the symbol file,

  • be created by means of the ARRANGE statement within the PRODAMP procedure or

  • be defined internally, i.e. by the PRODAMP programming language.

The name, relative address, type and length of a symbol are stored in the DAMP symbol files or in the private symbol files assigned by means of ADD-SYMBOLS. The relative address always refers to the beginning of the structure (DSECT) which contains the appropriate symbol. This means that a data structure in the diagnosis object can be accessed via a symbol only if the base address of the structure concerned is specified. This fact is taken into account in the syntax of a symbol.

Examples

.ETCBTFT

“.ETCBTFT” is identified as a symbol by the initial period. The base address does not need to be specified explicitly in this case because the TCB belongs to the structures which DAMP can localize automatically (other such structures are the JCB, UVMT, SVMT and EXVT).

A_FCB.ID1FILE

“A_FCB” is a variable which contains the base address of the structure concerned - in this case, a TU-FCB. “ID1FILE” is a field name in the DSECT “ID1FCB”.

PTR.NKLCB_MDL.COPY_PARAMETER.USER_ALLOCATION.WAIT_FACTOR

This example shows symbols in substructures. These are specified in terms of the nesting structure of the substructure or by calling the standard PRODAMP procedure REFERENCE.
It is only necessary to specify the DSECT (NKLCB_MDL) if the first symbol (COPY_PARAMETER) is not unique among all the DSECTS contained in the symbol file.

The following names are reserved as identifiers in PRODAMP and cannot be used for variables:

ABS-ADDRESSING  ADDRESS         ALET            AND             ARRANGE
ASEL            COMMAND         CPU             CURRENT         DEC_BINARY
DEC_STRING      DMP_#REFRESH    DO              DSECT           DUMP_MEMORY
ELSE            ELSIF           END             ENTER_MODULE    EXTRACT
FALSE           FOLLOW          GLOBAL          HEX_BINARY      HEX_STRING
HSA             IF              IN              INFIELDS        INSERT          
INTERRUPT       ITN             LAYOUT          LENGTH          LIST            
LOCATION        LOAD_GLOBAL     MESSAGE         MOD             NAME
NEW_TASK        NEXT_WINDOW     NOT             NUMBER          NUMERIC
OFF             OFFSET          ON              OPC_TABLE       OR
OUTPUT          PARAMETER       PATTERN         PCB             PCK_BINARY
READ            READ_WINDOW     REAL            REFERENCE       RELATIV
RETURN          SET_HEADER      SPID            STRING          SVC_TABLE
THEN            TID             TRACE           TRUE            TSN
TYPE            UNDEFINED       UNSIGNED_OFF    UNSIGNED_ON     VIRTUAL
WHILE           WINDOW          WRITE

The following names are reserved as symbol identifiers in conjunction with CURRENT and INFIELDS in PRODAMP. If they are not included in the list above, they can be used as variables, but not as symbol names.

ADDRESS         ALET            ASEL            ASID            ATYPE
COMMAND         CONFIGURATION   CPU             CSMA            DTYPE
DUMPTIME        ERROR           FILENAME        HSA             ITN
LAYOUT          LENGTH          LEVEL           MARK1           MARK2
MARK3           MARK4           MARK5           MARK6           PARAMETER
PCB             PTYPE           RELATIVE        SEGMENT         SPID
STACK           SYMBOL          TIME            TID             TSN
VERSION         WNDNO           WNDTSK

PRODAMP procedures with these names cannot be called as user subroutines.

All identifiers that begin with DMP_ are reserved for future PRODAMP extensions and should therefore not be used in user programs.