Parameters
The parameters are explained as follows:
- name
- An optional symbol, starting in column 1, that is the name on
the IWM4ECRE macro invocation. The name must conform to the rules
for an ordinary assembler language symbol.
- ,ACCESS=PRIMARY
- ,ACCESS=HOME
- When TYPE=MONENV is specified, a required parameter, which describes
how to access the monitoring environment.
- ,ACCESS=PRIMARY
-
indicates that the monitoring environment can be accessed
in the caller's primary address space. This would be appropriate if
the monitoring environment was established (by IWM4MCRE) to be used
by routines in a specific system key or if it was established to be
used in a specific user key in the current primary.
- ,ACCESS=HOME
-
indicates that the monitoring environment must be accessed
in the home address space, which is not the caller's primary address
space. This would be appropriate if the monitoring environment was
established (by IWM4MCRE) for use by a specific user key.
- ,ARRIVALTIME=arrivaltime
- When TYPE=INDEPENDENT is specified, a required input parameter,
which contains the work arrival time in STCK format. This is the time
at which the business work request is considered to have arrived and
from which point the system evaluates elapsed time for the work request.
To code: Specify the RS-type address, or address
in register (2)-(12), of a 64 bit field.
- ,CLSFY=clsfy
- When TYPE=INDEPENDENT is specified, a required input parameter,
which contains the classification information in the format of the
parameter list for IWM4CLSY or IWMCLSFY.
NOTE that this name is the data area name, not
its pointer. IWM4CLSY MF(M) or IWMCLSFY MF(M) should be used to initialize
the area prior to invocation of IWM4ECRE.
Note that the variable
length fields associated with the classify parameter list given by
the CLSFY keyword have the following limitations in addition to those
documented in IWMCLSFY:
- SUBSYSPM is limited to 255 bytes
- COLLECTION is limited to 18 bytes
- CORRELATION is limited to 12 bytes
To code: Specify the RS-type
address, or address in register (2)-(12), of a character field.
- ,ESTRT=IMPLIED
- ,ESTRT=EXPLICIT
- ,ESTRT=EXPLICIT_SINGLE
- ,ESTRT=NEVER
- When TYPE=INDEPENDENT is specified, an optional parameter, which
denotes how the work manager indicates the start and end point of
an EWLM work request when participating in cross platform Enterprise
Workload Management (EWLM). The default is ESTRT=IMPLIED.
- ,ESTRT=IMPLIED
- If the work manager previously connected to WLM with IWM4CON
EWLM=YES, a work request is started implicitly when the enclave is
created. If IWMESTOP was not invoked before, the work request will
be stopped implicitly when the enclave is deleted.
- ,ESTRT=EXPLICIT
- The work manager indicates the start and end point of an EWLM
work request by invoking the services IWMESTRT and IWMESTOP. NOTE
that this option is only meaningful, if the work manager previously
connected to WLM with IWM4CON EWLM=YES.
- ,ESTRT=EXPLICIT_SINGLE
- Same as option EXPLICIT above, but the application ensures,
that only one work request is active (no nested calls to IWMESTRT
are allowed). If this option is specified the CPU consumption on all
EWLM Enclave services (IWMEGCOR, IWMESTRT, IWMESTOP, IWMEBLK, IWMEUBLK)
will be reduced. If ESTRT=EXPLICIT_SINGLE is specified on IWMECREA,
the the application must also add the EWLMMODE=EXPLICIT_SINGLE parameter
on all calls to IWMEGCOR, IWMESTRT, IWMESTOP, IWMEBLK and IWMEUBLK.
If this parameter is used, the application has some restrictions on
all calls to IWMEGCOR, IWMESTRT, IWMESTOP, IWMEBLK and IWMEUBLK (see
the corresponding macro descriptions for details).
- ,ESTRT=NEVER
- Indicates, that this enclave will never use any EWLM related
enclave services (IWMEGCOR, IWMESTRT, IWMESTOP, IWMEBLK, IWMEUBLK)
after the enclave has been created, even if the work manager has registered
(IWM4CON or IWMCONN) with EWLM=YES.
Moreover IWM4ECRE will not start an EWLM work
request on the enclave and will not do any EWLM related processing.
- ,ETOKEN=etoken
- A required output parameter, which will receive the Enclave
token.
To code: Specify the RS-type
address, or address in register (2)-(12), of an 8-character field.
- ,EXSTARTDEFER=NO
- ,EXSTARTDEFER=YES
- When TYPE=INDEPENDENT is specified, an optional parameter, which
indicates whether the Enclave execution start time should begin when
the first IWM4STBG or IWMEJOIN is executed. The time between enclave
create and the first IWM4STBG or IWMEJOIN is assumed to be the queue
time. The default is EXSTARTDEFER=NO.
- ,EXSTARTDEFER=NO
-
indicates that the Enclave execution start time should not
begin when the first IWM4STBG or IWMEJOIN is executed.
- ,EXSTARTDEFER=YES
-
indicates that the Enclave execution start time should begin
when the first IWM4STBG or IWMEJOIN is executed.
- ,FUNCTION_NAME=function_name
- When TYPE=INDEPENDENT is specified, a required input parameter,
which contains the descriptive name for the function for which the
Enclave was created.
To code: Specify
the RS-type address, or address in register (2)-(12), of an 8-character
field.
- ,IMPORTANCE=importance
- An optional output parameter that will receive the importance
value of the service class to which the unit of work is classified.
To code: Specify the RS-type address, or address
in register (2)-(12), of a halfword field.
- ,INSERVCLS=inservcls
- ,INSERVCLS=0
- When TYPE=INDEPENDENT is specified, an optional input parameter,
which contains the service class token of a previous classification
call. The caller must ensure that the classification attributes of
the work unit matches the service class token. If the service class
token is still valid an enclave is created and associated with the
service and report class information contained in the token. If the
service class token is not valid IWM4ECRE will perform the full classification
by using the information of the CLSFY parameter block and return code
4, reason code IwmRsnCodeNewServcls. The default is 0.
To code: Specify the RS-type address, or address
in register (2)-(12), of a fullword field, or specify a literal decimal
value.
- ,MF=S
- ,MF=(L,list addr)
- ,MF=(L,list addr,attr)
- ,MF=(L,list addr,0D)
- ,MF=(E,list addr)
- ,MF=(E,list addr,COMPLETE)
- An optional input parameter that specifies the macro form.
Use
MF=S to specify the standard form of the macro, which builds an inline
parameter list and generates the macro invocation to transfer control
to the service. MF=S is the default.
Use MF=L to specify the
list form of the macro. Use the list form together with the execute
form of the macro for applications that require reentrant code. The
list form defines an area of storage that the execute form uses to
store the parameters. Only the PLISTVER parameter may be coded with
the list form of the macro.
Use MF=E to specify the execute
form of the macro. Use the execute form together with the list form
of the macro for applications that require reentrant code. The execute
form of the macro stores the parameters into the storage area defined
by the list form, and generates the macro invocation to transfer control
to the service.
- ,list addr
- The name of a storage area to contain the parameters. For MF=S
and MF=E, this can be an RS-type address or an address in register
(1)-(12).
- ,attr
- An optional 1- to 60-character input string that you use to
force boundary alignment of the parameter list. Use a value of 0F
to force the parameter list to a word boundary, or 0D to force the
parameter list to a doubleword boundary. If you do not code attr,
the system provides a value of 0D.
- ,COMPLETE
- Specifies that the system is to check for required parameters
and supply defaults for omitted optional parameters.
- ,MONTKN=montkn
- When TYPE=MONENV is specified, a required input parameter which
contains the delay monitoring token which describes the current business
unit of work. If the monitoring environment is related to an address
space, then it must be the current home address space.
To code: Specify the RS-type address, or address
in register (2)-(12), of a 32 bit field.
- ,MONTKN64=montkn64
- When TYPE=MONENV is specified, a required input parameter which
contains the long delay monitoring token which describes the current
business unit of work. If the monitoring environment is related to
an address space, then it must be the current home address space.
To code: Specify the RS-type address, or address
in register (2)-(12), of a 64 bit field.
- ,PLISTVER=IMPLIED_VERSION
- ,PLISTVER=MAX
- ,PLISTVER=0
- ,PLISTVER=1
- ,PLISTVER=2
- An optional input parameter that specifies the version of the
macro. PLISTVER determines which parameter list the system generates.
PLISTVER is an optional input parameter on all forms of the macro,
including the list form. When using PLISTVER, specify it on all macro
forms used for a request and with the same value on all of the macro
forms. The values are:
- IMPLIED_VERSION, which is the lowest
version that allows all parameters specified on the request to be
processed. If you omit the PLISTVER parameter, IMPLIED_VERSION
is the default.
- MAX, if you want the parameter list to be
the largest size currently possible. This size might grow from release
to release and affect the amount of storage that your program needs.
If
you can tolerate the size change, IBM recommends that you always specify
PLISTVER=MAX on the list form of the macro. Specifying MAX ensures
that the list-form parameter list is always long enough to hold all
the parameters you might specify on the execute form, when both are
assembled with the same level of the system. In this way, MAX ensures
that the parameter list does not overwrite nearby storage.
- 0, which supports all parameters except
those specifically referenced in higher versions.
- 1, which supports both the following parameters
and those from version 0:
- 2, which supports both the following parameters
and those from version 0 and 1:
| | |
---|
INSERVCLS
|
MONTKN64
|
|
MONTKN
|
SERVCLS
|
|
To code: Specify one of the following:
- IMPLIED_VERSION
- MAX
- A decimal value of 0, 1, or 2
- ,RETCODE=retcode
- An optional output parameter into which the return code is to
be copied from GPR 15. If you specify 15, GPR15, REG15, or R15 (within
or without parentheses), the value will be left in GPR 15.
To code: Specify the RS-type address of a
fullword field, or register (2)-(12) or (15), (GPR15), (REG15), or
(R15).
- ,RSNCODE=rsncode
- An optional output parameter into which the reason code is to
be copied from GPR 0. If you specify 0, 00, GPR0, GPR00, REG0, REG00,
or R0 (within or without parentheses), the value will be left in GPR
0.
To code: Specify the RS-type address
of a fullword field, or register (0) or (2)-(12), (00), (GPR0), (GPR00),
REG0), (REG00), or (R0).
- ,SERVCLS=servcls
- When TYPE=INDEPENDENT is specified, an optional output parameter,
when CLSFY has been specified which receives the service class token
which matches the classification attributes. The token allows the
caller to use fast path classification for work units which have the
same classification attributes than the current work unit.
To code: Specify the RS-type address, or address
in register (2)-(12), of a fullword field.
- TYPE=INDEPENDENT
- TYPE=DEPENDENT
- TYPE=WORKDEPENDENT
- TYPE=MONENV
- An optional parameter, which indicates the type of Enclave being
created. The default is TYPE=INDEPENDENT.
- TYPE=INDEPENDENT
- indicates that the Enclave represents a new business unit of
work with its own business objectives.
- TYPE=DEPENDENT
- indicates that the Enclave represents a continuation of the
business unit of work represented by the current home address space.
- TYPE=WORKDEPENDENT
- Indicates that the enclave represents a continuation of the
creating unit of work's (TCB or SRB) transaction. The resulting enclave's
type depends on the caller's execution environment: If the caller
has joined or is scheduled into an enclave of type independent, the
resulting enclave will be of type work-dependent and is regarded as
an extension of the independent enclave's transaction. Classification
and owner address space is adopted from the independent enclave. If
the caller has joined or is scheduled into an enclave of type work-dependent,
the resulting enclave will be of type work-dependent, as well. It
is considered a part of the underlying independent enclave's transaction
and inherits owner address space and classification from that independent
enclave. If the caller has joined or is scheduled into a dependent
enclave, the resulting enclave will be of type dependent. The new
enclave is considered part of the creating enclave's (i.e., the enclave
the caller is running in) owner address space's transaction and inherits
its classification. The creating enclave's owner address space will
become the owner of the new enclave. Finally, if no enclave has been
joined when the service is called, the resulting enclave will be as
if the service had been invoked with TYPE=DEPENDENT specified. Note
that it is not allowed to invoke this service with TYPE=WORKDEPENDENT
specified while running in a foreign enclave.
- TYPE=MONENV
- indicates that the Enclave represents a continuation of the
business unit of work represented by the input management monitoring
environment. TYPE=MONENV enclaves cannot be created for report-only
monitoring environments.
- ,WORKREQ_HDL=workreq_hdl
- When ESTRT=IMPLIED and TYPE=INDEPENDENT are specified, an optional
output parameter that will receive the handle which represents the
work request. The application must pass this handle to the other work
request services IWMESTOP, IWMEBLK, IWMEUBLK, and IWMEGCOR.
To code: Specify the RS-type address, or address
in register (2)-(12), of an 8-character field.
|