Show assignment and monitoring of devices
Component: | BS2000 |
Functional area: | Device management |
Domain: | DEVICE |
Privileges: | STD-PROCESSING |
Routing code: | E |
Function
The SHOW-DEVICE-STATUS command displays information on device assignment and monitoring.
Nonprivileged users obtain information only on devices reserved for their own jobs. Information on volumes is displayed only if the volumes are physically online (in contrast to SHOW-DISK-STATUS). If there is no volume online on a device, the output indicates which volume should be mounted on that device.
The command supports structured output in S variables (see "Output in S variables").
Privileged functions
Systems support staff are shown information about all devices.
Format
SHOW-DEVICE-STATUS | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Operands
UNIT = *STD(...) / *SELECT-TYPE(...) / *SELECT-LOCATION / *DEVICE-RANGE(...) /
list-poss(26): <alphanum-name 2..2 with-wild(20)> / <alphanum-name 4..4 with-wild(20)>
Specifies the hardware units for which information is to be output. The selection is made on the basis of device type, device family or device mnemonic (two or four characters). Mnemonic device names that cannot be generated are handled like nongenerated devices. A maximum of 26 device mnemonics may be specified.
UNIT = *STD
The scope of the information displayed depends on the user’s privilege level. Nonprivileged users (privilege STD-PROCESSING) receive information about all devices occupied by their own jobs. The possible scope of the output should be borne in mind. Privileged users receive information for all devices. UNIT=*STD is rejected at operating consoles, since the output may be very extensive.
UNIT = *SELECT-TYPE(...)
Information is output for the devices known to the system that have the specified type and attributes.
TYPE = *ALL / <composed-name 1..8> / <alphanum-name 1..8> / <device>
Information is output for all devices (TYPE=*ALL) or for all devices of the specified type.
In interactive mode, TYPE=? displays the possible type specifications.
The device type and device family are possible values for all devices (see also the device table (device type column or “Family” column) of the “System Installation” [46] manual). Volume types can also be specified for tape devices.
Possible values may be found in the device table, device type column, (see device table (device type column) of the “System Installation” manual [46]). For tape devices, the possible values may be found in the volume types table.
ATTRIBUTE = *ALL / *ATTACHED / *DETACHED / *DETACH-PENDING / *ATTACH-PENDING / *INVALID / *FREE / *DMS / *EXCLUSIVE / *PUBLIC / *SWITCH / *SHARE / *ENABLED / *DISABLED
Device attribute. The hardware units corresponding to the specified device attribute are selected.
Operand value (device attribute) | Meaning |
---|---|
*ALL | any attribute |
configuration-state | |
*ATTACHED | attached to the system |
*DETACHED | not attached to the system |
*DET[ACHED]-P[ENDING] | currently assigned, no longer available thereafter |
*ATT[ACHED]-P[ENDING] | currently not available |
*INVALID | not available |
*ENABLED | FastDPAV alias devices are ENABLED |
*DISABLED | FastDPAV alias devices are DISABLED |
device-allocation-state | |
*FREE | attached to the system |
*DMS | occupied by DMS application |
*EXCL[USIVE] | exclusively reserved |
*PUB[LIC] | occupied by public disk |
pool-attribute | |
*SWITCH | generated for multiple systems |
*SHARE | shareable |
UNIT = *SELECT-LOCATION(...)
Information is output for devices that are assigned to the storage locations.
LOCATION =
Denotes the storage locations assigned to the devices.
LOCATION = ALL
Information is output for the devices of all storage locations.
LOCATION = list-poss(10): <structured-name 1..8 with-wild(40)>
Information is output for the devices of the specified storage locations. A maximum of 10 storage locations can be specified.
UNIT = *DEVICE-RANGE(...)
Information is output for a set of devices which exist in the specified range of device codes. Starting with the device designated in the FROM operand, up to 256 devices are determined until the TO operand is reached. The output only includes existing devices; nonexistent devices are ignored.
FROM = <alphanum-name 2..2> / <x-text 4..4>
Specifies the mnemonic device code (MN) of the first device.
TO = <alphanum-name 2..2> / <x-text 4..4>
Specifies the mnemonic device code (MN) of the last device.
UNIT = list-poss(26): <alphanum-name 2..2 with-wild(20)> / <alphanum-name 4..4 with-wild(20)>
Specifies by their mnemonic device name one or more devices for which information is output. You can specify up to 26 devices.
INFORMATION = *STD / *SUMMARY / *TASK / *ALL / *LOCATION
Type of information is output. If UNIT = <mn> is specified, only the value *STD is permitted here.
INFORMATION = *STD
Standard information is output.
Output format:
MNEM DEV-TYPE CONF-STATE POOL VSN DEV-A PHASE ACTION
INFORMATION = *SUMMARY
A summary of configuration and assignment status, related to device type, is output.
Output format:
DEV-TYPE AVAIL PRE-/IN-USE RES-BY-MN RES-BY-TYPE ATT DET DET-P
INFORMATION = *TASK
A summary of the occupying or reserving tasks is generated for the specified type. The nonprivileged user receives information only about assignments for his own task.
Output format:
List of assignments/reservations with device reference
MNEM TYPE DEV-A PHASE MNEM TYPE DEV-A...
List of assignments/reservations without device reference
TYPE TASKS-WITH-RESERVATIONS
INFORMATION = *ALL
Output of *STD, *SUMMARY and *TASK.
INFORMATION = *LOCATION
Outputs the scope of *SUMMARY and *TASK, arranged by storage location. The nonprivileged user receives information only about assignments for his own task.
Return codes
(SC2) | SC1 | Maincode | Meaning |
---|---|---|---|
0 | CMD0001 | No error | |
2 | 0 | NKD0005 | Warning: information incomplete |
2 | 0 | NKD0030 | Warning: INFORMATION parameter changed |
1 | NKD0001 | Syntax error in the input, correction of the command parameters recovers the error | |
1 | NKD0013 | Syntax error in SH-DEV-STATUS | |
32 | CMD2009 | Error on output to S variable (e.g. subsystem not available) | |
64 | NKD0002 | No information available | |
64 | NKD0006 | Software error in NKDDEVS procedure | |
64 | NKD0021 | No information available for type and attribute | |
64 | NKD0023 | No information available for MN list | |
64 | NKD0036 | No information available for the specified storage locations | |
64 | NKD0038 | No device of specified type is assigned to a storage location | |
64 | OPS0002 | Interrupt (e.g. by K2 key) during S variable generation | |
4 | 130 | NKD0009 | The disk monitor is temporarily not available; the information may be incomplete |
8 | 130 | NKD0009 | The tape monitor is temporarily not available; the information may be incomplete |
12 | 130 | NKD0009 | The disk and tape monitors are not available |
130 | OPS0001 | SDF-P reporting space problems (possible response: FREE-VARIABLE and repeat command) |
Notes
A VSN can appear in two output records at the same time during a remount operation: in the record of the device on which the volume is physically online, and in the record of the device on which the volume is to be mounted.
Mnemonics or VSNs which cannot be generated are treated as unknown mnemonics or VSNs.
If VSNs are specified which are currently unknown to the system, “empty” records containing only VSN and “NO ACTION” are returned. Only if ‘*’ is specified in the VSN operand will no records be output for unknown VSNs.ATTRIBUTES=*ENABLED or *DISABLED selects all FastDPAV devices in the mentioned state (FastDPAV see “Introduction to System Administration” [14])
Output in S variables
The INFORMATION operand identifies the S variables which are to be created. The following values are possible for INFORMATION: *STD/*SUMMARY/*TASK/*ALL/ *LOCATION.
Output information | Name of the S variable | T | Contents | Condition |
---|---|---|---|---|
Mount operation being performed for the volume by the volume monitoring system | var(*LIST).ACTION | S | '' | INF=ALL/STD |
Number of devices in the “ATTACHED” state (available) | var(*LIST).ATTACH | I | <integer> | INF=LOCATION |
Number of available devices | var(*LIST).AVAIL | I | <integer> | INF=LOCATION |
Configuration state of the specified device. *ENABLED / *DISABLED states are only possible for FastDPAV alias devices | var(*LIST).CONF-STA | S | '' | INF=ALL/STD |
Number of devices in the “DETACHED” state (unavailable) | var(*LIST).DET | I | <integer> | INF=LOCATION |
Number of devices in the “DETACHED-PENDING” state (not shareable after use) | var(*LIST).DET-PEND | I | <integer> | INF=LOCATION |
Type of device allocation; if the device is reserved exclusively, the TSN is output | var(*LIST).DEV-ALLOC | S | '' | INF=ALL/STD |
Name of the depot | var(*LIST).LOCATION | S | '' | INF=LOCATION |
Volume monitoring mode | var(*LIST).PHASE | S | '' | INF=ALL/STD |
Device availability in relation to multiple systems | var(*LIST).POOL-ATTR | S | '' | INF=ALL/STD |
Number of devices implicitly reserved by volumes of the | var(*LIST).PRE-IN-USE | I | <integer> | INF=LOCATION |
Number of devices reserved by SECURE-RESOURCE-ALLOCATION UNIT=<mn> | var(*LIST).RESERVED-BY-MN | I | <integer> | INF=LOCATION |
Number of devices needed to handle the requested allocation/reservation | var(*LIST).RESERVED-BY-TYPE | I | <integer> | INF=LOCATION |
Location of the reserved volume | var(*LIST).RESERVED.LOCATION | S | '' | INF=LOCATION |
Device type of the volume reserved by the task | var(*LIST).RESERVED.TYPE | S | '' | INF=ALL/LOCATION/TASK |
Number of tasks reserving a specific device type | var(*LIST).RESERVED.TYPE-RES(*LIST). | I | <integer> | INF=ALL/LOCATION/TASK |
TSN of the tasks reserving a specific device type | var(*LIST).RESERVED.TYPE-RES(*LIST). | S | '' | INF=ALL/LOCATION/TASK |
Total number of devices of the specified type (see SUMM.TYPE) which are in the “ATTACHED” state | var(*LIST).SUMM.ATTACH | I | <integer> | INF=ALL/SUMMARY |
Total number of available devices of the specified type (see SUMM.TYPE) | var(*LIST).SUMM.AVAIL | I | <integer> | INF=ALL/SUMMARY |
Total number of devices of the specified type (see SUMM.TYPE) which are in the “DETACHED” state | var(*LIST).SUMM.DET | I | <integer> | INF=ALL/SUMMARY |
Total number of devices of the specified type (see SUMM.TYPE) which are in the “DETACHED-PENDING” state | var(*LIST).SUMM.DET-PEND | I | <integer> | INF=ALL/SUMMARY |
Total number of devices of the specified type (see SUMM.TYPE) which are implicitly reserved by volumes of the relevant phase | var(*LIST).SUMM.PRE-IN-USE | I | <integer> | INF=ALL/SUMMARY |
Total number of devices of the specified type (see SUMM.TYPE) which have been reserved using SECURE-RESOURCE-ALLOCATION UNIT=<mn> | var(*LIST).SUMM.RESERVED-BY-MN | I | <integer> | INF=ALL/SUMMARY |
Total number of devices of the specified type (see SUMM.TYPE) needed to handle reservation and allocation requests | var(*LIST).SUMM.RESERVED-BY-TYPE | I | <integer> | INF=ALL/SUMMARY |
Volume device type | var(*LIST).SUMM.TYPE | S | '' | INF=ALL/SUMMARY |
Type of device allocation by the task; if the device is reserved exclusively, the TSN is output | var(*LIST).TASK.DEV-ALLOC | S | '' | INF=ALL/TASK |
Volume monitoring mode used by the task | var(*LIST).TASK.PHASE | S | '' | INF=ALL/TASK |
Device type of the device reserved by the task | var(*LIST).TASK.TYPE | S | '' | INF=ALL/TASK |
Device mnemonic of the unit reserved by the task | var(*LIST).TASK.UNIT | S | '' | INF=ALL/TASK |
Volume device type | var(*LIST).TYPE | S | '' | INF=ALL/STD/LOCATION |
Device unit mnemonic | var(*LIST).UNIT | S | '' | INF=ALL/STD |
Volume serial number | var(*LIST).VOL | S | '' | INF=ALL/STD |
Examples
Output to SYSOUT with INFORMATION=*SUMMARY
/show-dev-sta inf=*summary
% DEV-TYPE AVAIL PRE-/IN-USE RES-BY-MN RES-BY-TYPE ATT DET DET-P % SKP2 2 0 0 0 2 32 0 % HNC 4 6 0 0 10 232 0 % D3490-30 0 2 0 0 2 0 0 % D3490-40 0 2 0 0 2 0 0 % D3435 170 590 0 0 760 3318 0 % STDDISK 0 0 0 0 0 632 0 % 3590E 10 0 0 0 10 104 0 % BM1662FS 0 0 0 0 0 2 0
Output in S variables with INFORMATION=*SUMMARY
/exec-cmd (show-device-status inf=sum),text-output=*none,struc-output=var
/show-var var,inf=*par(val=*c-lit)
OUT#1.SUMM.TYPE = 'SKP2' OUT#1.SUMM.AVAIL = 2 OUT#1.SUMM.PRE-IN-USE = 0 OUT#1.SUMM.RESERVED-BY-MN = 0 OUT#1.SUMM.RESERVED-BY-TYPE = 0 OUT#1.SUMM.ATTACH = 2 OUT#1.SUMM.DET = 32 OUT#1.SUMM.DET-PEND = 0 *END-OF-VAR ........... ...........
Output in S variables with INFORMATION=*TASK
/declare-var var-name=out(type=*structure),multiple-elem=*list
/exec-cmd cmd=(show-device-status inf=task),text-output=*none,structureoutput=out
/show-var out,inf=*par(val=*c-literal)
OUT#1.SUMM.TYPE = 'CON3027' OUT#1.SUMM.AVAIL = 0 OUT#1.SUMM.PRE-IN-USE = 0 OUT#1.SUMM.RESERVED-BY-MN = 0 OUT#1.SUMM.RESERVED-BY-TYPE = 0 OUT#1.SUMM.ATTACH = 0 OUT#1.SUMM.DET = 2 OUT#1.SUMM.DET-PEND = 0 *END-OF-VAR OUT#2.SUMM.TYPE = 'CON3027C' OUT#2.SUMM.AVAIL = 1 OUT#2.SUMM.PRE-IN-USE = 0 OUT#2.SUMM.RESERVED-BY-MN = 0 OUT#2.SUMM.RESERVED-BY-TYPE = 0 OUT#2.SUMM.ATTACH = 1 OUT#2.SUMM.DET = 11 OUT#2.SUMM.DET-PEND = 0 *END-OF-VAR ............ ............ OUT#26.SUMM.TYPE = 'BM1662' OUT#26.SUMM.AVAIL = 0 OUT#26.SUMM.PRE-IN-USE = 0 OUT#26.SUMM.RESERVED-BY-MN = 0 OUT#26.SUMM.RESERVED-BY-TYPE = 0 OUT#26.SUMM.ATTACH = 0 OUT#26.SUMM.DET = 1 OUT#26.SUMM.DET-PEND = 0 *END-OF-VAR OUT#27.SUMM.TYPE = 'BM1662FS' OUT#27.SUMM.AVAIL = 0 OUT#27.SUMM.PRE-IN-USE = 0 OUT#27.SUMM.RESERVED-BY-MN = 0 OUT#27.SUMM.RESERVED-BY-TYPE = 0 OUT#27.SUMM.ATTACH = 0 OUT#27.SUMM.DET = 2 OUT#27.SUMM.DET-PEND = 0 *END-OF-VAR