|
The functions that can be specified in parameter 1 are described
below. - INIT
- The routine performs any initialization that is required. During
the initialization of a language processor environment, the
system calls the exec load routine to initialize load processing.
- LOAD
- The routine loads the exec specified in the exec block from the
ddname specified in the exec block. Format of the exec block describes
the exec block.
The routine returns the address of the in-storage
control block (parameter 3) that represents the loaded exec. Format of the in-storage control block shows the format of the in-storage
control block.
Note: The TSO/E IRXLOAD routine reuses an existing
copy of a previously loaded exec if one already exists in storage,
and if it appears that the exec did not change since the exec was
originally loaded. However, if the CLOSEXFL flag is on, indicating
the SYSEXEC data set should be closed after each exec is loaded from
SYSEXEC, IRXLOAD will not reuse a previously loaded exec copy to satisfy
a load request. Instead, each load request results in a new copy
of the exec being read into storage. For more information about the
CLOSEXFL flag, see Flags and corresponding masks.
- TSOLOAD
- The routine loads the exec specified in the exec block from the
current list of ddnames that TSO/E is using to search for REXX execs.
For example, the routine may search load libraries, any exec libraries
as defined by the TSO/E ALTLIB command, and SYSEXEC and SYSPROC. See Search order for a description of the complete search
order.
You can use the TSOLOAD function only in the TSO/E address
space in a language processor environment that
is integrated into TSO/E. TSOLOAD requires an environment that is
integrated into TSO/E because TSOLOAD requests that the exec load
routine use the current TSO/E search order to locate the exec.
The
TSOLOAD function is intended for use if you call the system-supplied
exec load routine (IRXLOAD) in TSO/E. TSOLOAD gives you the flexibility
to search more than one DD to locate a REXX exec compared to the LOAD
function, which only searches the DD specified in the exec block.
You can also use the TSOLOAD function if you write your own exec
load routine and then call your routine from application programs
running in TSO/E.
TSOLOAD is not intended for language processor environments that
are not integrated into TSO/E. Therefore, if you provide an exec load
routine to replace the system- supplied exec load routine in the module
name table, your routine that replaces the system routine need not
handle the TSOLOAD request. This is because you can replace the system-supplied
exec load routine only in environments that are not integrated into
TSO/E.
For the TSOLOAD function, the exec load routine returns
the: - DD from which the exec was loaded. The routine returns the ddname
in the exec block (at offset +24) that you provide on the call.
- Address of the in-storage control block in parameter 3 of the
parameter list. The control block represents the loaded exec.
Note: The TSO/E IRXLOAD routine reuses an existing copy
of a previously loaded exec if one already exists in storage, and
if it appears that the exec did not change since the exec was originally
loaded. However, if the CLOSEXFL flag is on, indicating the SYSEXEC
data set should be closed after each exec is loaded from SYSEXEC,
IRXLOAD will not reuse a previously loaded exec copy to satisfy a
load request. Instead, each load request results in a new copy of
the exec being read into storage. For more information about the CLOSEXFL
flag, see Flags and corresponding masks.
- FREE
- The routine frees the exec represented by the in-storage control
block that is pointed to by parameter 3.
Rule: If a user
written load routine calls IRXLOAD to load an exec, the user written
load routine must also call IRXLOAD to free the exec. If TSO/E REXX
loads an exec, it also frees the exec. For information about the
IRXEXEC routine, see The IRXEXEC routine.
- STATUS
- The routine determines whether the exec specified in the exec
block is currently loaded in storage from the ddname specified in
the exec block. If the exec is loaded, the routine returns the address
of the in-storage control block in parameter 3. The address that
the routine returns is the same address that was returned for the
LOAD function when the routine originally loaded the exec into storage.
- TERM
- The routine performs any cleanup before termination of the language processor environment. When
the last language processor environment under
the task that originally opened the DD terminates, all files associated
with the environment are closed. In TSO/E REXX, when terminating
the last language processor environment under
a task, IRXLOAD frees any execs that were loaded by any language processor environment under
the task but which were not yet freed.
- CLOSEDD
- The routine closes the data set specified in the exec block, it
does not free any execs that have been loaded from this data set.
The CLOSEDD function allows you to free and reallocate data sets.
Only data sets that were opened on the current task can be closed.
|