vUses the STARToption of the EXEC CICS ENABLE command to make
DFH$PCEX available for execution. This causes DFH$PCEX to be driven for
all LINKs and XCTLs.
vLinks to the dummy program, DFH$PCPL, in order to drive DFH$PCEX.
vUses the STOP option of the EXEC CICS DISABLE command to make
DFH$PCEX unavailable for execution. Note that this leaves DFH$PCEX’s
global work area still allocated and accessible through the EXEC CICS
EXTRACT EXIT command.
3. Section 3 of DFH$PCPI shows how to share the system information in an exit
program’s global work area with other exit programs. (In doing so it
demonstrates how application programs can access the same information by
means of the EXEC CICS EXTRACT EXIT command.) It also shows how to use
CICS shared storage to overcome the limitation of 32KB on the size of a GWA.
The program obtains an area of 64KB below 16MB and an area of 128KB
above 16MB (using GETMAIN). The use of shared storage enables the second
user exit program (DFH$ZCAT) to use a work area of only 12 bytes below
16MB.
The section performs the following processing:
vUses EXEC CICS ENABLE to enable the DFH$ZCATuser exit program, and
allocate it a global work area
vUses EXEC CICS EXTRACT EXIT to obtain the address of DFH$ZCAT’s
global work area
vStores the address of DFH$PCEX’s global work area in DFH$ZCAT’sglobal
work area
vUses GETMAIN to obtain the shared storage above and below the 16MB
line, and stores the addresses in DFH$ZCAT’sglobal work area.
Sample program definitions
The following are examples of the RDO definitions required to define the sample
programs to the CSD:
DEFINE PROGRAM(DFH$PCEX) GROUP(EXITGRP)
LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL)
USELPACOPY(NO) STATUS(ENABLED) CEDF(YES) DATALOCATION(ANY)
EXECKEY(CICS)
DEFINE PROGRAM(DFH$PCPI) GROUP(EXITGRP)
LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL)
USELPACOPY(NO) STATUS(ENABLED) CEDF(YES) DATALOCATION(ANY)
EXECKEY(CICS)
DEFINE PROGRAM(DFH$PCPL) GROUP(EXITGRP)
LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL)
USELPACOPY(NO) STATUS(ENABLED) CEDF(YES) DATALOCATION(ANY)
EXECKEY(CICS)
DEFINE PROGRAM(DFH$ZCAT) GROUP(EXITGRP)
LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL)
USELPACOPY(NO) STATUS(ENABLED) CEDF(YES) DATALOCATION(ANY)
EXECKEY(CICS)
DFH$PCPI is designed to be run as a PLTprogram. If you write a similar program,
you should define it in the second part of the PLTPI list (after the
PROGRAM=DFHDELIM entry). Information about how to do this is in the CICS
Resource Definition Guide.
Chapter1. Global user exit programs 17