Dispatcher domain’s specific gates

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

DSAT gate, ATTACH function

The ATTACH function of the DSAT gate is used to attach a new task.

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

DSAT gate, CHANGE_MODE function

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

DSAT gate, CLEAR_MATCH function

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

DSAT gate, CHANGE_PRIORITY function

The CHANGE_PRIORITY function of DSAT gate has two effects:

  1. It changes the dispatch priority of the issuing task.
  2. 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

DSAT gate, SET_PRIORITY function

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

DSAT gate, CANCEL_TASK function

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

DSAT gate, FREE_SUBSPACE_TCBS function

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

DSAT gate, DELETE_SUBSPACE_TCBS function

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

DSAT gate, TCB_POOL_MANAGEMENT function

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

DSAT gate, RELEASE_OPEN_TCB function

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

DSAT gate, SET_TRANSACTION_TOKEN function

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

DSBR gate, START_BROWSE function

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

DSBR gate, END_BROWSE function

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

DSBR gate, GET_NEXT function

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

DSBR gate, INQUIRE_TASK function

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

DSBR gate, SET_TASK function

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

DSBR gate, INQUIRE_TCB function

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

DSBR gate, SET_TCB function

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

DSIT gate, INQUIRE_DISPATCHER function

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

DSIT gate, SET_DISPATCHER function

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

DSIT gate, ACTIVATE_MODE function

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

DSIT gate, ADD_TCB function

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

DSIT gate, DELETE_TCB function

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

DSIT gate, DELETE_ OPEN_TCB function

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

DSIT gate, DELETE_ALL_OPEN_TCBS function

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

DSIT gate, FREE_TCB function

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

DSIT gate, PROCESS_DEAD_TCBS function

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

DSSR gate, ADD_SUSPEND function

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

DSSR gate, DELETE_SUSPEND function

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

DSSR gate, SUSPEND function

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

DSSR gate, RESUME function

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

DSSR gate, WAIT_MVS function

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

DSSR gate, WAIT_OLDW function

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

DSSR gate, WAIT_OLDC function

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 ]]