Creating the external subsystem module table

The external subsystem creates the external subsystem module table (ESMT) to supply definitions of the external subsystem modules that IMS is to load.

External subsystem exit routine modules, as well as any other modules needed in the ESAP, are defined in the ESMT. The installation provides the name of the ESMT to IMS as part of the definition of the external subsystem. During initialization for attach processing in the control and dependent regions, IMS loads the ESMT and then loads the modules defined therein.

The external subsystem optionally provides in the ESMT definitions of work areas needed for its ESAP. If work area definitions are provided, IMS obtains the specified work area storage in each region after loading the defined modules.

IMS provides two macros to be used by the external subsystem to create the ESMT. The DFSEMODL macro is used to define the ESAP modules that IMS is to load. The DFSEWAL macro is used to define the work areas that IMS is to create. A series of DFSEMODL statements defining modules, optionally followed by DFSEWAL statements defining work areas, and ending with a DFSEMODL statement specifying END=LAST, generates the table.