What the external subsystem must provide

The External Subsystem must provide three things: the External Subsystem Attachment Package (ESAP), the External Subsystem Module Table (ESMT), and the Resource Translation Table (RTT).

External Subsystem Attachment Package (ESAP)

The IMS Attach Facility uses an exit routine interface. That is, to accomplish external subsystem access from dependent regions, IMS activates exit routines at certain processing points. These exit routines must be supplied by the external subsystem. The exit routine functions are prescribed by IMS; the external subsystem supplies its unique implementation. The exit routines must, in fact, provide the actual linkage to the external subsystem. IMS is not sensitive to the linkage mechanism used.

IMS loads external subsystem-supplied exit routine modules in the control region and in each dependent region that can access the external subsystem. The external subsystem can supply additional modules needed for attach exit routine processing; IMS loads these modules as well. The external subsystem modules provided for attach processing in the IMS regions make up what IMS calls the External Subsystem Attachment Package (ESAP).

External subsystem module table (ESMT)

The external subsystem must specify the modules that IMS is to load in an external subsystem module table (ESMT). The external subsystem creates the module table using macros provided by IMS and makes it available to the installation. The installation specifies the name of the ESMT to IMS by including it on the definition of the external subsystem to IMS.

Resource translation table (RTT)

IMS uses a PSB (program specification block) to define the DL/I resources required by an application program. For an MPP, the PSB name is the same as the application program name; for a BMP or IFP, the PSB name can be different. The external subsystem can use a name other than the PSB name or the IMS application program name for the entity it uses to define the external subsystem resources required by the application program. If the external subsystem uses a different name, the external subsystem can provide a resource translation table (RTT) to map either PSB names or application program names to its entity names.

The external subsystem creates the RTT and makes it available to the installation. The installation specifies the name of the RTT on the definition of the external subsystem to IMS. IMS loads the RTT when it loads the ESAP.

The external subsystem is responsible for doing the actual mapping. IMS does not access the RTT; it merely loads the table and makes its address available to the ESAP. IMS does not prescribe the format of the RTT.