z/OS MVS Using the Subsystem Interface
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Placement of Function Routines

z/OS MVS Using the Subsystem Interface
SA38-0679-00

Your subsystem function routines must be addressable from any address space, as the SSI gives control to the subsystem in the caller's environment. To meet this requirement, the following are the choices for placement of your function routines:
  • Place your function routines in one of the data sets from which LPA (PLPA, MLPA, or FLPA) is built. That is, those specified in the LPALSTxx, IEALPAxx, or IEAFIXxx members of SYS1.PARMLIB.
  • Place your function routines in one of the data sets specified in the LNKLSTxx member of SYS1.PARMLIB. Note that if SYS1.PARMLIB member IEASYSxx specifies LNKAUTH=APFTAB, this data set must also be defined in IEAAPFxx, or in the APF section of SYS1.PARMLIB member, PROGxx.

The placement of your function routines influences the setting of the load-to-global option that is used when building your SSVT or enabling functions with the IEFSSVT macro. If you decide to place your function routines in LPALSTxx, IEALPAxx, or IEAFIXxx, the load-to-global option has no effect. If you decide to place your function routines in LNKLSTxx, you must specify the load-to-global option. When set, this option causes the system to load the function routines into pageable CSA. A subsystem can choose to place all of its function routines in LPA, or in pageable CSA, or a combination of the two. See Building the SSVT or Enabling Your Subsystem for New Functions for more information.

Note: If you request load-to-global, the SSI, running under your task, issues a LOAD macro with the end of memory (EOM) keyword set to YES. Function routines that are loaded this way are deleted from storage if the home address space of the requesting task ends. To protect the system, you must deactivate your subsystem or disable all its function codes if the address space ends. To do this, write a function routine that gets control for broadcast function code 8 (end-of-address space). If the address space that owns the function routine ends, invoke IEFSSVT to disable your subsystem's function codes or invoke IEFSSI to deactivate your subsystem. See Disabling Previously Supported Functions for information on IEFSSVT and see Deactivating Your Subsystem for information on IEFSSI.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014