Previous Topic: Considerations About LE RuntimeNext Topic: Supported LE Functions


Running LE-Compliant Compiler Programs Under CA IDMS/DC

This section describes what you need to do to compile, link, and run a program compiled with an LE-compliant compiler.

General Preparation

The next paragraph describes how to prepare LE-compiled programs for use with CA IDMS/DC:

For non-reentrant PL/I programs compiled under Release 2.3 or earlier, you must specify OPTIONS (MAIN) in the PL/I PROCEDURE statement for the entry procedure. For reentrant PL/I Release 2.3 or earlier programs, you must specify OPTIONS (MAIN,REENTRANT). For AD/CYCLE (LE-COMPLIANT), PL/I programs, you must specify OPTIONS (REENTRANT,FETCHABLE).

Note: RHDCLENT/RHDCLINT, required in earlier releases, is not needed for DC/UCF at release levels 14.1 and above.

Runtime Options

The IBM Language Environment provides numerous options which control how programs operate at runtime. The default values are designed to be suitable in a batch environment. Therefore, it is necessary to modify some values for applications which are to run in a DC/UCF online system.

Note: As stated in the introduction, the information in this appendix does not apply to programs which run in a CICS or other region even if they access CA IDMS using DML or SQL commands. It does apply to programs which run a DC/UCF online system which are invoked from another front-end using CA IDMS UCF, such as an CA ADS application which is accessed using UCFCICS from a CICS front-end.

The IBM Language Environment provides a number of ways to specify runtime options. Four methods are supported for CA IDMS/DC online programs:

  1. Modify, assemble, and link the IBM-supplied CEEUOPT module. Link the resulting module with each application program. Product Documentation Change LI8624 contains a sample version of CEEUOPT with values that are appropriate for most online CA IDMS applications. Also consult the section "Creating an Application-Specific Runtime Options Module" in IBM's LE Installation and Customization Manual.
  2. Assemble and link a CEEUOPT module as previously described.Link the resulting module with RHDCLEFE. Make sure that RHDCLEFE is defined in the CF/UCF Sysgen as described under "Performance Improvements Using RHDCLEFE" later in this guide. This option affects only COBOL programs. This is the recommended option for all online COBOL applications.
  3. Assemble and link a specialized CEEDOPT module.

    Note: This method is not available for z/OS Version 1.10 and higher. Use method 1 or method 4 for non-COBOL applications on z/OS Version 1.10 and higher.

    If this method is chosen, special copies of the IBM modules CEEBINIT and CEEPIPI must be maintained for use with online DC/UCF systems only. Due to maintenance considerations, this method is not recommended for COBOL applications. It is needed for PL/I programs compiled with a non-LE-compliant compiler. For further information on using this method, see Product Documentation Change LI23664.

  4. Assemble and link a specialized CEEROPT module.

    Note: This method is not available for z/OS Version 1.9 and lower or for VSE. Use method 1 or method 3 for PL/I programs with those operating systems.

    If this method is chosen, a CEEROPT load module can be created to override desired options. Like CEEUOPT, and unlike CEEDOPT, you only need to specify those options which are to be different from the installation default LE run-time options. The resultant load module must be included in a load library in the CDMSLIB concatenation ahead of the default SCEERUN load library.

    Note: CEEROPT will be loaded in a CA IDMS region only if your CEEPRMxx member specifies CEEROPT(ALL).

    For more information on using this method, see IBM documentation

Except as discussed below, the IBM-supplied default runtime options can be used with any site-specific desired modifications. Note that the MSGFILE parameter is ignored and messages are sent to the CA IDMS log file.

Recommended settings for certain parameters are as shown below. For more details about these parameters, see the IBM Language Environment for OS/390 Customization manual.

In addition to the parameters above, we strongly recommend that you use smaller values than the default ones for the various heap (e.g., ANYHEAP, BELOWHEAP, HEAP) and stack (e.g., LIBSTACK, STACK) parameters since these are allocated on a task thread basis. Storage allocation is most efficient if relatively large values are specified as sixteen bytes less than a multiple of 4096. Smaller values than 4096 should be set for some parameters to avoid wasting storage. The following values have been found to be suitable for most DC/UCF systems: