Link-editing your governor exit routine

Place the load module for the governor in a library available to all your QMF users. IBM recommends the library QMF720.SDSQLOAD, which contains the load modules for QMF itself. This library can be part of the concatenation for STEPLIB.

Name the module DSQUnGV1. These are the names of the IBM-supplied modules. Placing your own governor module in the QMF720.SDSQLOAD library replaces the IBM-supplied module, because that module is a member of that library.

To avoid replacing the IBM-supplied module, you can rename it or move it to another library. Or you can place the module for your own governor in a different library in STEPLIB. If you place your module in a different library, be sure that your module's new library comes before QMF720.SDSQLOAD in the concatenation sequence. If it is not, QMF calls the IBM-supplied module instead of your own.

Be sure that the entry point for the new module is DSQUnGV1. If your source code begins with a CSECT statement with the DSQUnGV1 label, there is nothing extra to do. If your source code does not begin with the DSQUnGV1 label, specify the entry name on the END statement for the assembler code, or place it in an ENTRY statement in the linkage editor input.

Your own routine can run in either 31- or 24-bit addressing mode. If your routine requires OS/390 services that need 24-bit addressing mode (such as TPUT), then QMF handles the transfer from QMF running in 31-bit mode to the governor routine running in 24-bit mode and back to QMF in 31-bit mode.

ENTRY DSQUEGV1
   MODE  AMODE(31),RMODE(ANY)
   NAME  DSQUEGV1(R)

The QMF-supplied governor (DSQUEGV1) must run with AMODE(24) and RMODE(24).

ENTRY DSQUEGV1
   MODE  AMODE(24),RMODE(24)
   NAME  DSQUEGV1(R)
[ Previous Page | Next Page | Contents | Index ]