Table 46 summarizes the dispatcher domain’s specific
gates. It shows the level-1 trace point IDs of the modules providing the functions
for the gates, the functions provided by the gates, and whether or not the
functions are available through the exit programming interface (XPI).
Table 46. Dispatcher domain’s specific gates
Gate |
Trace |
Function |
XPI |
DSAT |
DS 0002
DS 0003
|
ATTACH
CANCEL_TASK
CHANGE_MODE
CHANGE_PRIORITY
CLEAR_MATCH
DELETE_SUBSPACE_TCBS
FREE_SUBSPACE_TCBS
NOTIFY_DELETE_TCB
RELEASE_OPEN_TCB
SET_PRIORITY
SET_TRANSACTION_TOKEN
TCB_POOL_MANAGEMENT
|
NO
NO
NO
YES
NO
NO
NO
NO
NO
NO
NO
NO
|
DSBR |
DS 0010
DS 0011
|
END_BROWSE
GET_NEXT
INQUIRE_TASK
INQUIRE_TCB
SET_TASK
SET_TCB
START_BROWSE
|
NO
NO
NO
NO
NO
NO
NO
|
DSIT |
DS 0008
DS 0009
|
ACTIVATE_MODE
ADD_TCB
DELETE_ALL_OPEN_TCBS
DELETE_OPEN_TCB
DELETE_TCB
FREE_TCB
INQUIRE_DISPATCHER
PROCESS_DEAD_TCBS
SET_DISPATCHER
|
NO
NO
NO
NO
NO
NO
NO
NO
NO
|
DSSR |
DS 0004
DS 0005
|
ADD_SUSPEND
DELETE_SUSPEND
SUSPEND
RESUME
WAIT_MVS
WAIT_OLDW
WAIT_OLDC
|
YES
YES
YES
YES
YES
NO
NO
|
The ATTACH function of the DSAT gate is used to attach a new task.
- The transaction manager uses the function to attach system or nonsystem
tasks that have PCT entries.
- Other parts of CICS® use the function to attach system tasks that do not
have PCT entries.
This function is used to attach a new task, and add it to the appropriate
Dispatcher queue.
When the task is first dispatched, the calling domain receives the TASK_REPLY
call at its DSAT gate (see DSAT format, TASK_REPLY function).
Input parameters
- PRIORITY
- affects a task’s dispatching precedence. It can have a value in
the range 0 (low priority) through 255 (high priority).
- USER_TOKEN
- is the token by which the task to be attached is known to the caller.
- [TIMEOUT]
- is the deadlock time-out interval, in milliseconds.
- TYPE
- is the type of task. It can have either of these values:
SYSTEM|NON_SYSTEM
- [MODE]
- specifies the mode in which the task is to run. It can have any of these
values:
CO (concurrent)
FO (file-owning)
QR (quasi-reentrant)
RO (resource-owning)
RP (ONC/RPC-owning)
SZ (secondary LU usage)
- [TASK_REPLY_GATE_INDEX]
- is used when a gate other than the attaching domain’s default gate
is to receive a resultant TASK_REPLY.
- [SPECIAL_TYPE(SMSY)]
- identifies the special task SMSY.
- [TRANSACTION_TOKEN]
- identifies the transaction associated with the attached task.
Output parameters
- TASK_TOKEN
- is the token by which the attached task is known to the dispatcher.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is DISASTER. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
INSUFFICIENT_STORAGE
|
DISASTER |
LOOP
ABEND
USER_TASK_SLOT_UNAVAILABLE
|
The CHANGE_MODE function of DSAT gate is used to move a task from one CICS-managed
TCB to another, or to select the mode in which the task is to run.
Input parameters
- MODE
- is the mode to be used by the task. It can have any of these values:
CO (concurrent)
FO (file-owning)
QR (quasi-reentrant)
RO (resource-owning)
RP (ONC/RPC-owning)
SZ (secondary LU usage)
- [CONDITIONAL]
- states whether the CHANGE_MODE should be conditional on the current
load on the CPU. It can have either of these values:
YES|NO
- MODENAME
- 2-character mode name.
- MODENAME_TOKEN
- token representing modename. More efficient than using MODENAME. The
token is returned by ACTIVATE_MODE and by CHANGE_MODE (see OLD_MODENAME_TOKEN
below)
- TCB_TOKEN
- token representing the TCB instance to which to switch. The token is
returned by CHANGE_MODE (see OLD_TCB_TOKEN below)
- FRESH_TCB
- indicates whether a fresh TCB is required. It can have either of these
values:
YES|NO
- [PRIMARY MATCH]
- an 8-byte token to be used to search for a matching free TCB instance
to which to switch.
- [SECONDARY MATCH]
- an 8-byte token to be used to search for a matching free TCB instance
to which to switch.
- [MATCH_STRATEGY]
- the strategy to be followed if a TCB instance that satisfies the PRIMARY_MATCH
and SECONDARY_MATCH values is not found. The only value allowed is:
EXACT_THEN_NEW_THEN_BEST
Output parameters
- OLD_MODE
- is the mode used by the task when the CHANGE_MODE request was issued.
It can have any of these values:
CO (concurrent)
FO (file-owning)
QR (quasi-reentrant)
RO (resource-owning)
RP (ONC/RPC-owning)
SZ (secondary LU usage)
- OLD_MODENAME
- is the mode used by the task when the CHANGE_MODE request was issued.
It can have the same values as OLD_MODE. OLD_MODENAME is preferred to OLD_MODE.
- OLD_MODENAME_TOKEN
- is a token representing the mode used by the task when the CHANGE_MODE
request was issued.
- OLD_TCB_TOKEN
- is a token representing the TCB used by the task when the CHANGE_MODE
request was issued.
- [MATCH_RESULT]
- indicates the level of success of the matching process. It can have
any of these values:
EXACT_MATCH
NO_MATCH
PRIM_NOT_SEC_MATCH
NOT_APPLIC
- [NEW_TCB_TOKEN]
- token representing the TCB instance returned by the matching process.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is DISASTER, EXCEPTION, INVALID, or PURGED.
Possible values are:
RESPONSE |
Possible REASON values |
DISASTER |
LOCK_FAILED
ACTIVATE_MODE_FAILED
ADD_TCB_FAILED
SUSPEND_FAILED
|
EXCEPTION |
MODE_NOT ACTIVE
NO_TCBS_ACTIVE
INSUFFICIENT_STORAGE,
TCB_FAILED
TOO_FEW_TCBS
|
INVALID |
INVALID_MODENAME
INVALID_MODENAME_TOKEN
INVALID_TCB_TOKEN
INVALID_FRESH_TCB_USAGE
|
PURGED |
TIMED_OUT
TASK_CANCELLED
|
The CLEAR_MATCH function of the DSAT gate causes all match tokens associated
with the calling TCB to be discarded.
Input parameters
None
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have only one
value:
OK
The CHANGE_PRIORITY function of DSAT gate has two effects:
- It changes the dispatch priority of the issuing task.
- It causes control to be given up to another task.
Input parameters
- [PRIORITY]
- is the new priority. It can have a value in the range 0 (low priority)
through 255 (high priority).
Output parameters
- [OLD_PRIORITY]
- is the task’s former priority. It can have a value in the range
0 (low priority) through 255 (high priority).
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|INVALID|KERNERROR
The SET_PRIORITY function of DSAT gate changes the priority of the issuing
task, or the task specified by the TASK_TOKEN parameter.
Input parameters
- PRIORITY
- is the new priority. It can have a value in the range 0 (low priority)
through 255 (high priority).
- [TASK_TOKEN]
- identifies the task whose priority is to be changed.
- [SPECIAL_TYPE(IMMEDIATE_SHUTDOWN_TASK)]
- identifies the special task "IMMEDIATE_SHUTDOWN_TASK":
Output parameters
- [OLD_PRIORITY]
- is the task’s former priority. It can have a value in the range
0 (low priority) through 255 (high priority).
- [RESPONSE]
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. It has the value:
INVALID_TASK_TOKEN
The CANCEL_TASK function of DSAT gate causes a specified task to be canceled.
The task is cancelled when in a suitable suspend or when a deferred abend
can be delivered to the task.
Input parameters
- TASK_TOKEN
- is the token representing the task to be canceled.
- CANCEL_TYPE
- can have either of these values:
FORCE_CANCEL|NORMAL_CANCEL
- DEFERRED_ABEND_CODE
- is the abend code to be used when the task is abended during deferred
abend processing.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
INVALID_TASK_TOKEN
INVALID_STATE
NOT_PURGEABLE,
CANCEL_INHIBITED
INVALID_STATE_PURGE
|
The FREE_SUBSPACE_TCBS function of DSAT gate releases any open subspace
TCBs owned by the task, and makes them available for use by another task executing
with the same subspace, or deletes the TCBs if the task is 'unclean'.
Input parameters
None
Output parameters
- OPEN_TCBS_USED_AND_KEPT
- is a bit string indicating which TCB modes were used by the task, of
and are now available to other tasks
- OPEN_TCBS_USED_AND_LOST
- is a bit string indicating which TCB modes were used by the task, of
and have now been deleted because the task was 'unclean'
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is DISASTER or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
DISASTER |
LOCK_FAILED |
INVALID |
NOT_SUBSPACE_ELIGIBLE |
The DELETE_SUBSPACE_TCBS function of DSAT gate deletes any open TCBs associated
with the given subspace.
Input parameters
- SUBSPACE_TOKEN
- indicates the subspace whose associated open TCBs are to be deleted
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|KERNERROR
- [REASON]
- is returned when RESPONSE is DISASTER or EXCEPTION. Possible values
are:
RESPONSE |
Possible REASON values |
DISASTER |
LOCK_FAILED |
EXCEPTION |
TOO_FEW_TCBS |
The TCB_POOL_MANAGEMENT function of DSAT gate deletes unallocated TCBs
which are excess to current requirements.
Input parameters
None
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|KERNERROR
- [REASON]
- is returned when RESPONSE is DISASTER. Possible values are:
RESPONSE |
Possible REASON values |
DISASTER |
LOCK_FAILED |
The RELEASE_OPEN_TCB function of DSAT gate frees the TCB from the calling
task's ownership.
Input parameters
- TCB_TOKEN
- is the token representing the task that owns the TCB to be freed.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is DISASTER or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
DISASTER |
LOCK_FAILED |
INVALID |
INVALID_TCB_TOKEN, TCB_NOT_OWNED |
The SET_TRANSACTION_TOKEN function of DSAT gate sets the XM domain transaction
token of the transaction associated with the currently dispatched task.
Input parameters
- TRANSACTION_TOKEN
- identifies the dispatcher task for which SET_TRANSACTION_TOKEN is to
be performed.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|INVALID|KERNERROR
The START_BROWSE function of DSBR gate starts a browse session with the
dispatcher.
Input parameters
None.
Output parameters
- BROWSE_TOKEN
- is the token representing this browse session.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|PURGED
The END_BROWSE function of DSBR gate ends a browse session with the dispatcher.
Input parameters
- BROWSE_TOKEN
- is the token identifying the browse session to be ended.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is INVALID. It has this value:
INVALID_BROWSE_TOKEN
The GET_NEXT function of DSBR gate returns information about the next task.
Input parameters
- BROWSE_TOKEN
- is the token identifying the browse session.
Output parameters
- [TASK_TOKEN]
- is the token by which the task is known to the dispatcher.
- [KERNEL_TOKEN]
- is the token by which the task is known to the kernel.
- [DOMAIN_INDEX]
- is the 2-character index identifying the domain that made the ATTACH
call for the task.
- [OPEN_MODES]
- is a 32-bit string which indicates which modes of open TCBs were used
by this task.
- [PRIORITY]
- is the task’s dispatch priority. It can have a value in the range
0 (low priority) through 255 (high priority).
- [TYPE]
- is the type of task. It can have either of these values:
SYSTEM|NON_SYSTEM
- [STATE]
- is the state of the task. It can have any one of these values:
READY|RUNNING|SUSPENDED
- [RESOURCE_NAME]
- is the name of the resource that the task is waiting for, if the task
is suspended.
- [RESOURCE_TYPE]
- is the type of resource that the task is waiting for, if the task is
suspended.
- [RESOURCE_TIME]
- is the interval of time that has passed since the task last issued a
suspend or wait.
- [USER_TOKEN]
- is the token by which the task is known to the caller that made the
ATTACH request for the task.
- [SUSPEND_TOKEN]
- is the token by which the dispatcher recognizes a task to be suspended
or resumed.
- [MODE]
- is the mode in which the task is to run. It can have any one of these
values:
CO (concurrent)
FO (file-owning)
QR (quasi-reentrant)
RO (resource-owning)
RP (ONC/RPC-owning)
SZ (secondary LU usage)
- [TCB_TYPE]
- is the type of TCB that the task is executing on. It can have any one
of these values:
CKOPEN_TCB|UKOPEN_TCB|QR_TCB|INTERNAL_TCB
- [TCB_TOKEN]
- is the TCB token associated with the task.
- [ESSENTIAL_TCB]
- indicates whether the TCB is an essential TCB or not. It can have either
of these values:
ESSENTIAL_YES|ESSENTIAL_NO
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
END, INVALID_BROWSE_TOKEN |
The INQUIRE_TASK function of DSBR gate returns information about a specified
task.
Input parameters
- [INPUT_TASK_TOKEN]
- is the token for the task to be inquired on.
Output parameters
- [TASK_TOKEN]
- is the token by which the task is known to the dispatcher.
- [KERNEL_TOKEN]
- is the token by which the task is known to the kernel.
- [DOMAIN_INDEX]
- is the 2-character index identifying the domain that made the ATTACH
call for the task.
- [OPEN_MODES]
- is a 32-bit string which indicates which modes of open TCBs were used
by this task.
- [PRIORITY]
- is the task’s dispatch priority. It can have a value in the range
0 (low priority) through 255 (high priority).
- [TYPE]
- is the type of task. It can have either of these values:
SYSTEM|NON_SYSTEM
- [STATE]
- is the state of the task. It can have any one of these values:
READY|RUNNING|SUSPENDED
- [RESOURCE_NAME]
- is the name of the resource that the task is waiting for, if the task
is suspended.
- [RESOURCE_TYPE]
- is the type of resource that the task is waiting for, if the task is
suspended.
- [RESOURCE_TIME]
- is the interval of time that has passed since the task last issued a
suspend or wait.
- [USER_TOKEN]
- is the token by which the task is known to the caller that made the
ATTACH request for the task.
- [SUSPEND_TOKEN]
- is the token by which the dispatcher recognizes a task to be suspended
or resumed.
- [MODE]
- is the mode in which the task is to run. It can have any one of these
values:
CO (concurrent)
FO (file-owning)
QR (quasi-reentrant)
RO (resource-owning)
RP (ONC/RPC-owning)
SZ (secondary LU usage)
- [TCB_TYPE]
- is the type of TCB that the task is executing on. It can have any one
of these values:
CKOPEN_TCB|UKOPEN_TCB|QR_TCB|INTERNAL_TCB
- [TCB_TOKEN]
- is the TCB token associated with the task.
- [ESSENTIAL_TCB]
- indicates whether the TCB is an essential TCB or not. It can have either
of these values:
ESSENTIAL_YES|ESSENTIAL_NO
- [CANCEL_PENDING]
- Not supported by domain gate function.
- [DEFERRED_ABEND_CODE]
- Not supported by domain gate function.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values
are:
RESPONSE |
Possible REASON values |
EXCEPTION |
NOT_SUPPORTED |
INVALID |
INVALID_TASK_TOKEN |
The SET_TASK function of DSBR gate marks the task as "unclean" so that
open TCBs will be freed at task termination.
Input parameters
- [INPUT_TASK_TOKEN]
- is the token by which the task is known to the dispatcher.
- [CLEANLINESS]
- specifies that the task is to be marked "unclean". It can take only
the value UNCLEAN.
- [ABTERM_ALLOWED]
- Not supported by domain gate function.
- [WAIT]
- Not supported by domain gate function.
- [CLEAR_CANCEL_PENDING]
- Not supported by domain gate function.
Output parameters
- [ACTION]
- Not supported by domain gate function.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. Possible values are:
INVALID_TASK_TOKEN, NOT_SUPPORTED
The INQUIRE_TCB function of the DSBR gate returns the AP TCB-related token
associated with the specified DS TCB_TOKEN. If the AP token has not yet been
set by SET_TCB, then the function returns an AP_TCB_TOKEN value of zero.
Input parameters
- [TCB_TOKEN]
- token provided by DS representing the TCB instance for which the associated
AP-related token is required. If this is omitted, the token of the running
TCB is assumed.
Output parameters
- OWNER_TCB_TOKEN
- token, provided by the TCB's owning domain, associated with the TCB
instance defined by TCB_TOKEN.
- RESPONSE
- is the dispatcher’s response to the call. It can have one of these
values:
OK|INVALID
- [REASON]
- is returned when RESPONSE is INVALID. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
INVALID_TCB_TOKEN |
The SET_TCB function of the DSBR gate sets the AP TCB-related token to
be associated with the running TCB.
Input parameters
- OWNER_TCB_TOKEN
- token, provided by the TCB's owning domain, to be associated with the
running TCB.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have only one
value:
OK
The INQUIRE_DISPATCHER function of DSIT gate returns information about
the current state of the dispatcher.
Input parameters
None.
Output parameters
- [NUMBER_OF_SUBTASKS]
- is the number of subtasks for concurrent mode.
- [SCAN_DELAY_INTERVAL]
- is the delay before terminal control is dispatched after a terminal
is posted by the access method.
- [MAXIMUM_WAIT_INTERVAL]
- is the maximum delay before terminal control is dispatched.
- [PRIORITY_MULTIPLIER]
- determines how the priority of new tasks is to be penalized in ‘storage
getting short’ and ‘storage critical’ situations.
- [QR_BATCHING_VALUE]
- is the number of POSTs for BATCH=YES waits in quasi-reentrant mode.
- [MAXOPENTCBS]
- is the maximum number of TCBs in the TCB pool known as the open pool.
- [ACTOPENTCBS]
- is the number of TCBs in the TCB pool known as the open pool which are being used by current tasks.
- [RP_TCB_ATTACHED]
- indicates whether or not the RP TCB is attached. It can have either
of these values:
YES|NO
- [SZ_TCB_ATTACHED]
- indicates whether or not the SZ TCB is attached. It can have either
of these values:
YES|NO
- MAXJVMTCBS
- is the maximum number of TCBs in the JVM TCB pool.
- MAXHPTCBS
- is the maximum number of TCBS in the hotpooling Java™ TCB
pool.
- ACTJVMTCBS
- is the number of TCBs in the JVM TCB pool which are being used by current
tasks.
- ACTHPTCBS
- is the number of TCBS in the hotpooling Java TCB pool which are being
used by current tasks.
- RESPONSE
- is the dispatcher’s response to the call. It can have either of
these values:
OK|DISASTER
The SET_DISPATCHER function of DSIT gate sets the state of the dispatcher.
Input parameters
- [NUMBER_OF_SUBTASKS]
- is the number of subtasks for concurrent mode.
- [SCAN_DELAY_INTERVAL]
- is the delay before terminal control is dispatched after a terminal
is posted by the access method.
- [MAXIMUM_WAIT_INTERVAL]
- is the maximum delay before terminal control is dispatched.
- [PRIORITY_MULTIPLIER]
- determines how quickly a task's priority increases as it waits to be
dispatched. The faster it increases the less likely a low priority task is
to be held up for long periods by higher priority tasks in a busy system.
- [QR_BATCHING_VALUE]
- is the number of POSTs for BATCH=YES waits in quasi reentrant mode.
- [MAXOPENTCBS]
- is the maximum number of TCBs in the TCB pool known as the open pool.
- MAXJVMTCBS
- is the maximum number of TCBs in the JVM TCB pool.
- MAXHPTCBS
- is the maximum number of TCBS in the hotpooling Java TCB pool.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
MAXWAIT_LESSTHAN_SCANDELAY
MAXOPENTCBS_OUT_OF_RANGE
TOO_LATE_TO_SET_SUBTASKS
MAXJVMTCBS_OUT_OF_RANGE
MAXHPTCBS_OUT_OF_RANGE
|
The ACTIVATE_MODE function creates a mode to which TCBs can be added (by
ADD_TCB) so that tasks can CHANGE_MODE to the TCBs.
Input parameters
- MODE
- is the mode to be activated. MODE and MODENAME are mutually exclusive
but one must be specified. Mode is a single byte whose values correspond
to the pre 1.3 modes QR, RO, FO, CO, SZ and RP.
- MODENAME
- is the two character string that becomes the block name of the sub dispatcher
block created by ACTIVATE_MODE.
- IDENTITY
- is the name of the mode to be activated. It is a two byte character
string.
- EXEC_CAPABLE
- indicates whether TCBs in this mode are to be set up to support the
use of EXEC CICS commands by code running on them.
- LE_ENVIRONMENT
- indicates whether Language Environment is to run in native MVS™ mode or in CICS mode on TCBs in this mode.
- TCB_KEY
- indicates the key to be specified on ATTACHes of TCBs in this mode.
- INHERIT_SUBSPACE
- indicates whether TCBs in this mode will be able to run application
code in a subspace.
- ESSENTIAL_TCB
- indicates whether CICS is to be brought down if a TCB in this mode suffers
a non recoverable abend.
- PRTY_RELATIVE_TO_QR
- allows TCBs in this mode to have a different priority to that of the
QR TCB.
- MULTIPLE_TCBS
- indicates whether this mode allows more than one TCB.
- OPEN
- indicates whether TCBs in this mode are to be managed by the Dispatcher
domain as "Open TCBs".
- [NOTIFY_DELETE]
- indicates which domain, if any, to notify when a DELETE_TCB is issued.
It is the binary domain index for the domain.
- [OPEN_POOL_NUMBER]
- is the number of the open TCB pool which is to contain TCBs of the newly-activated
mode.
- [DEPENDENT_ON]
- indicates that TCBs of the mode being activated depend on the existence
of TCBs of another mode.
- [SZERO]
- indicates whether TCBs of the new mode should be attached with SZERO(YES)
or SZERO(NO). It can have either of these values:
SZERO_YES|SZERO_NO
- [WAIT_FOR_MATCH]
- indicates if a CHANGE_MODE should consider waiting for a suitable TCB
rather than using a free TCB. It can have one of these values:
NO_PRIMARY|NO_MODE|NEVER
Output parameters
- [MODENAME_TOKEN]
- is a token that identifies this modename.
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
MODE_ALREADY_ACTIVE
INSUFFICIENT_STORAGE,
MODENAME_ALREADY_ACTIVE
RESERVED_MODENAME
MODE_LIMIT_REACHED
TOO_MANY_MULTI
|
INVALID |
INVALID_MODE
INVALID_POOL_NUMBER
|
The ADD_TCB function adds a TCB to a particular mode.
Input parameters
- MODENAME
- specifies the name of the mode the TCB is to be added to. MODENAME and
MODENAME_TOKEN are mutually exclusive but one of them must be coded.
- MODENAME_TOKEN
- identifies mode the TCB is to be added by using the token returned by
the ACTIVATE_MODE.
- IDENTITY
- is an eight character string to placed in the Dispatcher's block that
represents the TCB.
Output parameters
- TCB_TOKEN
- is a token that uniquely idenifies this TCB.
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
INSUFFICIENT_STORAGE
RESERVED_MODENAME
MODE_LIMIT_REACHED
MODE_NOT_ACTIVE
|
INVALID |
INVALID_MODENAME
INVALID_MODENAME_TOKEN
|
The DELETE_TCB function is used by the caller to tell the Dispatcher that
the TCB is to be shutdown and that the associated control blocks can be freed.
If an attempt is made to shut down an essential TCB, an EXCEPTION response
is returned with a reason of NOT_SUPPORTED.
Note that no quiescing of tasks on the TCB is performed.
Input parameters
- TCB_TOKEN
- is a token that uniquely identifies the TCB.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
NOT_SUPPORTED
TCB_IN_USE
|
INVALID |
INVALID_TCB_TOKEN
|
DELETE_OPEN_TCB schedules the termination of an open TCB. If the TCB is
currently in use, the termination will occur when the owning task terminates.
Input parameters
- TCB_TOKEN
- is a token provided by DS that uniquely identifies the TCB.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is INVALID. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
INVALID_TCB_TOKEN |
DELETE_ALL_OPEN_TCBS schedules the termination of all open TCBs with a
given modename. For TCBs that are currently in use, the termination will occur
when the owning task terminates. The function does not prevent new TCBs of
the given mode from being created.
Input parameters
- MODENAME
- is the name of the mode of the TCBs to be deleted.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|DISASTER|EXCEPTION|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
MODE_NOT_ACTIVE |
INVALID |
INVALID_MODENAME |
The FREE_TCB function is issued by the Kernel and tells the Dispatcher
that a given TCB has terminated and been DETACHed.
Input parameters
- TCB_TOKEN
- is a token that uniquely identifies the TCB.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is EXCEPTION. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
TASK_NOT_TERMINATED
INVALID_TCB_TOKEN
|
The PROCESS_DEAD_TCBS function is issued by the SM system task each
time it runs to tell the Dispatcher to process any TCBs it finds on its dead
TCB chain. Such TCBs will be in an MVS WAIT issued by their ESTAE exit after
suffering a non recoverable abend.
Input parameters
None.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can be any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
The ADD_SUSPEND function of DSSR gate returns a suspend token which is
used to identify a task to be suspended or resumed.
Input parameters
- [RESOURCE_NAME]
- is the name of the resource that the task is suspended on.
- [RESOURCE_TYPE]
- is the type of resource that the task is suspended on.
Output parameters
- SUSPEND_TOKEN
- is the token that is used to identify the task to be suspended or resumed.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is DISASTER. It has this value:
INSUFFICIENT_STORAGE
The DELETE_SUSPEND function of DSSR gate discards a suspend token.
Input parameters
- SUSPEND_TOKEN
- is the suspend token to be deleted.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|KERNERROR
- [REASON]
- is returned when RESPONSE is INVALID. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
INVALID_SUSPEND_TOKEN
SUSPEND_TOKEN_IN_USE
|
The SUSPEND function of DSSR gate causes a running task to be suspended.
Input parameters
Note:
[INTERVAL] and [DEADLOCK_ACTION] are
mutually exclusive parameters.
- SUSPEND_TOKEN
- is the token identifying the task to be suspended.
- PURGEABLE
- is the purgeable status of the task. It can have either of these values:
YES|NO
- [INTERVAL]
- is an interval (in units as specified by TIME_UNIT) after which the
task is given back control if it has not been resumed by a DSSR RESUME call.
- [DEADLOCK_ACTION]
- describes whether the suspended task should be purged if deadlock is
detected, and if so, how it should be purged. It can have any one of these
values:
DELAYED|IMMEDIATE|INHIBIT
- [RESOURCE_NAME]
- is the name of the resource that the task is suspended on.
- [RESOURCE_TYPE]
- is the type of resource that the task is suspended on.
- [TIME_UNIT]
- identifies the time units specified on the INTERVAL and DELAY parameters
where present. It can have either of these values:
SECOND|MILLI_SECOND
- [DELAY]
- is an interval (in units as specified by TIME_UNIT) during which the
task is not dispatched if CICS has other work to do.
- [RETRY]
- indicates whether or not the dispatcher is to retry the suspend operation,
if the running task is not suspended by a preceding suspend operation. It
can have either of these values:
YES|NO
- [WLM_WAIT_TYPE]
- indicates the reason for task’s wait state to the MVS workload manager.
It can have any of these values:
LOCK|IO|CONV|CMDRESP|DISTRIB|
SESS_LOCALMVS|SESS_NETWORK|
SESS_SYSPLEX|TIMER|OTHER_PRODUCT|
MISC|IDLE
- [DISPATCH_BEFORE_WAIT]
- indicates if the suspended task is prepared to wait across a partition
exit It can have either of these values:
YES|NO
- [TEMP_HIGH_PRIORITY]
- indicates if the task is to get a temporary priority boost at the completion
of the suspend. It can have either of these values:
YES|NO
Output parameters
- [COMPLETION_CODE]
- is a completion code supplied by the resumed task.
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is INVALID or PURGED. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
INVALID_SUSPEND_TOKEN
ALREADY_SUSPENDED
CLEAN_UP_PENDING
|
PURGED |
TASK_CANCELLED
TIMED_OUT
|
The RESUME function of DSSR gate causes a suspended task to be resumed.
Input parameters
- SUSPEND_TOKEN
- is the token identifying the task to be resumed.
- [COMPLETION_CODE]
- is a completion code to be passed from the resumed task to the suspended
task.
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is EXCEPTION or INVALID. Possible values are:
RESPONSE |
Possible REASON values |
EXCEPTION |
TASK_CANCELLED
TIMED_OUT
|
INVALID |
INVALID_SUSPEND_TOKEN
ALREADY_RESUMED
|
The WAIT_MVS function of DSSR gate causes a task to wait on an ECB, or
list of ECBs, to be posted via the MVS POST service.
Input parameters
Note:
ECB_ADDRESS and ECB_LIST_ADDRESS are
mutually exclusive parameters; [INTERVAL] and [DEADLOCK_ACTION]
are also
mutually exclusive.
- ECB_ADDRESS
- is the address of the ECB for the task.
- ECB_LIST_ADDRESS
- is the address of a list of ECBs for the task.
- PURGEABLE
- is the purgeable status of the task. It can have either of these values:
YES|NO
- [INTERVAL]
- is an interval (in units as specified by TIME_UNIT) after which the
task is given back control if it has not been resumed by a DSSR RESUME call.
- [DEADLOCK_ACTION]
- describes whether the suspended task should be purged if deadlock is
detected, and if so, how it should be purged. It can have any one of these
values:
DELAYED|IMMEDIATE|INHIBIT
- [RESOURCE_NAME]
- is the name of the resource that the task is suspended on.
- [RESOURCE_TYPE]
- is the type of resource that the task is suspended on.
- [BATCH]
- states whether requests are to be batched. It can have either of these
values:
YES|NO
- [TIME_UNIT]
- identifies the time units specified on the INTERVAL and DELAY parameters
where present. It can have either of these values:
SECOND|MILLI_SECOND
- [DELAY]
- is an interval (in units as specified by TIME_UNIT) during which the
task is not dispatched if CICS has other work to do.
- [RETRY]
- indicates whether or not the dispatcher is to retry the suspend operation,
if the running task is not suspended by a preceding suspend operation. It
can have either of these values:
YES|NO
- [WLM_WAIT_TYPE]
- indicates the reasonfor task’s wait state to the MVS workload manager.
It can have any of these values:
LOCK|IO|CONV|CMDRESP|DISTRIB|
SESS_LOCALMVS|SESS_NETWORK|
SESS_SYSPLEX|TIMER|OTHER_PRODUCT|
MISC|IDLE
- [DISPATCH_BEFORE_WAIT]
- indicates if the suspended task is prepared to wait across a partition
exit It can have either of these values:
YES|NO
- [TEMP_HIGH_PRIORITY]
- indicates if the task is to get a temporary priority boost at the completion
of the suspend. It can have either of these values:
YES|NO
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is INVALID or PURGED. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
ALREADY_WAITING
INVALID_ECB_ADDR
|
PURGED |
TASK_CANCELLED
TIMED_OUT
|
The WAIT_OLDW function of DSSR gate causes a task to wait on an ECB, or
list of ECBs, that may be posted via the MVS POST service or by setting the
POST bit (X'40' in the first byte). This is supported only in QR mode.
Input parameters
Note:
ECB_ADDRESS and ECB_LIST_ADDRESS are
mutually exclusive parameters; [INTERVAL] and [DEADLOCK_ACTION]
are also
mutually exclusive.
- ECB_ADDRESS
- is the address of the ECB for the task.
- ECB_LIST_ADDRESS
- is the address of a list of ECBs for the task.
- PURGEABLE
- is the purgeable status of the task. It can have either of these values:
YES|NO
- [INTERVAL]
- is an interval (in units as specified by TIME_UNIT) after which the
task is given back control if it has not been resumed by a DSSR RESUME call.
- [DEADLOCK_ACTION]
- describes whether the suspended task should be purged if deadlock is
detected, and if so, how it should be purged. It can have any one of these
values:
DELAYED|IMMEDIATE|INHIBIT
- [RESOURCE_NAME]
- is the name of the resource that the task is suspended on.
- [RESOURCE_TYPE]
- is the type of resource that the task is suspended on.
- [SPECIAL_TYPE(CSTP)]
- identifies the special task CSTP.
- [TIME_UNIT]
- identifies the time units specified on the INTERVAL and DELAY parameters
where present. It can have either of these values:
SECOND|MILLI_SECOND
- [DELAY]
- is an interval (in units as specified by TIME_UNIT) during which the
task is not dispatched if CICS has other work to do.
- [RETRY]
- indicates whether or not the dispatcher is to retry the suspend operation,
if the running task is not suspended by a preceding suspend operation. It
can have either of these values:
YES|NO
- [WLM_WAIT_TYPE]
- indicates the reason for task’s wait state to the MVS workload manager.
It can have any of these values:
LOCK|IO|CONV|CMDRESP|DISTRIB|
SESS_LOCALMVS|SESS_NETWORK|
SESS_SYSPLEX|TIMER|OTHER_PRODUCT|
MISC|IDLE
- [DISPATCH_BEFORE_WAIT]
- indicates if the suspended task is prepared to wait across a partition
exit It can have either of these values:
YES|NO
- [TEMP_HIGH_PRIORITY]
- indicates if the task is to get a temporary priority boost at the completion
of the suspend. It can have either of these values:
YES|NO
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is INVALID or PURGED. Possible values are:
RESPONSE |
Possible REASON values |
PURGED |
TASK_CANCELLED
TIMED_OUT
|
INVALID |
ALREADY_WAITING, INVALID_ECB_ADDR, INVALID_MODE
|
The WAIT_OLDC function of DSSR gate causes a task to wait on an ECB that
must be posted by setting the X'40' bit rather than via the MVS POST
service. This is supported only in QR mode.
Input parameters
Note:
[INTERVAL] and [DEADLOCK_ACTION] are
mutually exclusive parameters.
- ECB_ADDRESS
- is the address of the ECB for the task.
- PURGEABLE
- is the purgeable status of the task. It can have either of these values:
YES|NO
- [INTERVAL]
- is an interval (in units as specified by TIME_UNIT) after which the
task is given back control if it has not been resumed by a DSSR RESUME call.
- [DEADLOCK_ACTION]
- describes whether the suspended task should be purged if deadlock is
detected, and if so, how it should be purged. It can have any one of these
values:
DELAYED|IMMEDIATE|INHIBIT
- [RESOURCE_NAME]
- is the name of the resource that the task is suspended on.
- [RESOURCE_TYPE]
- is the type of resource that the task is suspended on.
- [TIME_UNIT]
- identifies the time units specified on the INTERVAL and DELAY parameters
where present. It can have either of these values:
SECOND|MILLI_SECOND
- [DELAY]
- is an interval (in units as specified by TIME_UNIT) during which the
task is not dispatched if CICS has other work to do.
- [RETRY]
- indicates whether or not the dispatcher is to retry the suspend operation,
if the running task is not suspended by a preceding suspend operation. It
can have either of these values:
YES|NO
- [WLM_WAIT_TYPE]
- indicates the reason for task’s wait state to the MVS workload manager.
It can have any of these values:
LOCK|IO|CONV|CMDRESP|DISTRIB|
SESS_LOCALMVS|SESS_NETWORK|
SESS_SYSPLEX|TIMER|OTHER_PRODUCT|
MISC|IDLE
- [DISPATCH_BEFORE_WAIT]
- indicates if the suspended task is prepared to wait across a partition
exit It can have either of these values:
YES|NO
- [TEMP_HIGH_PRIORITY]
- indicates if the task is to get a temporary priority boost at the completion
of the suspend. It can have either of these values:
YES|NO
Output parameters
- RESPONSE
- is the dispatcher’s response to the call. It can have any one of
these values:
OK|EXCEPTION|DISASTER|INVALID|
KERNERROR|PURGED
- [REASON]
- is returned when RESPONSE is INVALID or PURGED. Possible values are:
RESPONSE |
Possible REASON values |
INVALID |
ALREADY_WAITING
INVALID_ECB_ADDR
INVALID_MODE
|
PURGED |
TASK_CANCELLED
TIMED_OUT
|
[[ Contents Previous Page | Next Page Index ]]