IBM Support

Enterprise COBOL for z/OS V5 or later versions and PDSE load libraries

White Papers


Abstract

IBM Enterprise COBOL for z/OS V5 compiler or later versions provide many features, including improved performance over previous COBOL compilers but require the executables to be in PDSE datasets. If you currently use PDS datasets for load libraries and are interested in COBOL V5 or later versions, this information will provide you with the guidance you need to migrate to PDSE load libraries to use COBOL V5 or later versions.

Note: The attached PDF document mentions COBOL V5, but it applies to Enterprise COBOL for z/OS V5 or later versions.

Content

If you are interested in COBOL V5 or later versions, and you currently run COBOL programs out of PDS load libraries, then start migrating your COBOL load libraries to PDSE datasets as soon as possible.

IBM understands the challenge of migrating from PDS load libraries to PDSE load libraries, and has received other feedback about COBOL for z/OS V5 or later versions and their requirements for PDSE load libraries. 

IBM has investigated the possibility of changing COBOL V5 or later versions to support Load Modules and PDS load libraries, however, it is not possible. 

The need for PDSE datasets and Program Objects are built into the very core of COBOL V5 or later versions.  Just a few examples of features that COBOL V5 or later versions use and will use that require Program Objects(PO) and thus PDSE datasets for executables are:
  • Improved init/term scheme relies on user-defined classes in object, requiring PO
  • QY-con requires PO 
    (A performance improvement for RXY (long displacement) instructions.
  • Condition-sequential RLD support requires PO
    A performance improvement for bootstrap invocation
  • PO can get page mapped 4K at a time for better performance
  • NOLOAD class DWARF debugging data requires PO
  • Common reentrancy model with C/C++ requires PO
  • XPLINK requires PO and will be used for AMODE 64
There are a couple of solutions to the problem of shared PDSE datasets across SYSPLEX boundaries.

One way is to not do Load Library sharing across SYSPLEX boundaries anymore, by using multiple copies of the dataset as PDSE for each SYSPLEX.

If PDS load libraries are shared across SYSPLEX boundaries today, in order to move to PDSE load libraries, you can use a main-copy approach:
  • One SYSPLEX can be the writer/owner of main PDSE load library (development SYSPLEX)
  • When PDSE load library is updated, push the new copy out to production SYSPLEX systems with XMIT or FTP
  • The other SYSPLEX systems would then RECEIVE the updated PDSE load library

[{"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Documentation","Platform":[{"code":"PF035","label":"z\/OS"}],"Version":"5.1;5.1.1;5.2;6.1;6.2","Edition":"","Line of Business":{"code":"LOB17","label":"Mainframe TPS"}}]

Document Information

Modified date:
19 July 2021

UID

swg27041176