z/OS JES3 Customization
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Executing a DSP or Installation Exit Routine in a C/I FSS Address Space

z/OS JES3 Customization
SA32-1006-00

If your installation uses C/I functional subsystem (FSS) address spaces, any installation exit routine that executes during the converter, interpreter, and prescan phases of C/I processing must be able to execute in a C/I FSS address space environment. Any DSP you write that executes in a C/I FSS address space must also be compatible with the C/I FSS address space environment. The C/I FSS address space contains only a subset of the nucleus modules and services that are available in the JES3 address space.

When writing an installation exit routine or DSP to execute in a C/I FSS address space, apply the same rules and procedures as those explained in section Programming Conventions for Writing DSPs and Installation Exits. However, be sure that the routine or DSP uses only those services that are available in a C/I FSS address space.

The following installation exit routines can execute in a C/I FSS address space:

&tab;IATUX03&tab;IATUX09
&tab;IATUX04&tab;IATUX10
&tab;IATUX05&tab;IATUX41
&tab;IATUX06

Table 1 shows which macros are available in a C/I address space.

Table 1. JES3 Executable Macros Available in a C/I FSS Address Space
Dump Formatting Macro Instructions

ABNCODE
ABNCVDEC
ABNCVHEX

ABNGET
ABNPUT

ABNVRFY
IATXMGET

Spool Data Management Macro Instructions

ABACKR
ABLOCK
ACLOSE
ADEBLOCK
AGETBUF
ALOCATE
ANOTE

AOPEN
AOPEND
APOINT
APUTBUF
ARELEASE
ATRACK
AWRITE

IATXCPYF
IATXIOX
IATXRDCH
IATXRELC
IATXSAS
IATXSIO
IATXUBAL
JESREAD
WRTCHAIN

JES3 Checkpoint Macro Instructions

IATXCKPT

   
DSP Program Management Macro Instructions

ACALL
ADELETE
ALOAD
ARETURN
FAILDSP
IATXATF

IATXCSF
IATXFRQ
IATXGENF
IATXGFC
IATXGRQ
IATXICA

JESTAE
RQTAADD
RQTADEL
RQTAPUT
VIOLATE

Resource Control Macro Instructions

ADEQ
AENQ

ATEST

AWAIT

Storage Management Macro Instructions

AGETMAIN
APUTMAIN
IATXBFM

IATXBGM
IATXBPL
IATXDPL

IATXGCL
IATXRCL
IATXSQE

Communication Macro Instructions

CONCNVRT
CONREVRT
IATXCNS
IATXIWT
IATXMID

IATXSCN1
IATXSCN2
JESMSG
JSERV

LOGIN
LOGOUT
MESSAGE
SSISERV

Job Management Macro Instructions

IATXELA
IATXELD
IATXELS
IATXRABC

IATXRABP
JDSADD
JDSGET
JDSHOLD

JDSPOINT
JDSPUT
JDSREL

JES3 Initialization Macro Instructions

ICONVBIN
ICONVHEX
INITMWLE

ISCAN1
ISCAN2
ISORT

ITREAD
IWASPOUT

SNA RJP Macro Instructions
IATXDEQ IATXENQ  
JES3 Inner Macro Instructions

IATXTREG
IATZCALL
IATZLOAD

IATZMEXC
IATZMNOT
IATZMOVE

IATZPCHK
IATZTYPE
RQTAGEN

Miscellaneous Macro Instructions

ACVX
ATIME
IATXCUE
IATXCVB
IATXCVD
IATXDYH

IATXDYT
IATXLPJ3
IATXMPC
IATXPHEX
IATXPRT
IATXPTCH

IATXTOD
IATXTRC
MOVEDATA
MTBL
ZEROCORE

Note: Macros issued by a routine that runs in a C/I FSS address space must not allocate track groups from the single track table (STT). Only routines operating in the JES3 global address space can access the STT.
The following other services are available in a C/I FSS address space:
  • JES3 ESTAE and ESTAE retry routines
  • The generalized subtask (macro IATXCSF)
  • DIE and termination routines
  • The initialization driver (module IATINIT)
  • The JSAM DSP (resident FCT)
  • The track allocation DSP (resident FCT)
  • The FSS driver DSP (resident FCT)
  • The general services DSP (resident FCT)
  • The FAILSOFT DSP (resident FCT)
  • The WAIT DSP (resident FCT)
  • The ABEND formatting routines
  • The CI DSP (converter/interpreter and prescan phases only)
  • The IOERR DSP
  • The FSS DSP dictionary (module IATGRPTF)
  • The FSS TVT (module IATGRVTF)
  • Any services accessible from a user address space.

Each C/I FSS address space has its own trace table and storage queue (not shared by the JES3 address space) in private area virtual storage.

For a complete list of all modules contained in the C/I FSS address space nucleus (IATNUCF), see z/OS JES3 Diagnosis Reference.

Installation exits and DSPs executing in C/I FSS address spaces may update a job's spool files using JSAM or USAM. JSAM should be used when running under an FCT. USAM should be used when running under a subtask. To serialize access to the spool files, most of the job's control blocks are “locked” in the JES3 global address space before the job is sent to the C/I FSS address space. (Control blocks are locked by turning off the FDBCLOSE bit in the appropriate FDB in the job's RQ.) Routines in the C/I FSS address space can then update the job's spool files while routines in the JES3 global address space cannot.

The only control block that is not “locked” is the job track allocation table (TAT). Job TAT updating for a DSP or installation exit routine executing in a C/I FSS address space must be done only from the JES3 global address space. To ensure proper spool space allocation, use the ATRACK macro, which sends the allocation request to the JES3 global address space. Failure to do so could cause duplicate track allocation and may force a cold start.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2013