General
Application area: | Multiprocessor systems; see "Multiprocessor systems" |
Macro type: | Type S, MSCF format 2: standard/C/D/L/E/M form; see "S-type macros" |
The new macro MCSINFO is available as of BS2000/OSD-BC V3.0 and replaces the MRSINF and MRSSTA macros.
Macro description
The MRSINF macro gives the user information on selected processors or on all processors in an MSCF communication network. A record with the following information is placed in an output area to be made available by the user:
BCAM name of the processor
External representation of the SYSID processor
BS2000 version which is used with this processor
Attainability of the processor in the MSCF network: a distinction is made between a local processor, a processor with which a connection exists, and a processor with which no connection exists.
Type of processor network: a distinction is made between a processor defined for LCS (Loosely Coupled System) and one defined for CCS (Closely Coupled System).
Macro format and description of operands
MRSINF |
KEY=HOST / SYSID / ALL [,HOST='bcamname' / addr] [,ESYSID='sysid' / addr] [,AREA=addr / (r)] [,AREAL=length / addr] ,MF=S / E / L / M / C / D [,PARAM=addr / (r)] ,PREFIX=M / p ,MACID=RSI / macid ,VERSION=2 / 1 |
KEY=
Indicates whether information is to be output about the entire MSCF network or about a specific processor and specifies the operands for selecting the processors.
HOST
Default value; information is requested about the processor in the MSCF communication network whose BCAM name is specified in the HOST operand.
SYSID
Information is requested about the processor in the MSCF communication network whose SYSID (system identification) is specified in the ESYSID operand.
ALL
Information about the entire MSCF communication network is requested.
HOST=
Specifies with the BCAM name the processor about which information is output.
'bcamname'
BCAM name of the processor about which information is requested. The name must be enclosed in apostrophes.
This operand value is to be specified with MF=S or MF=L.
addr
Symbolic address of a field in which the user places the BCAM name of the processor.This operand value can be specified with MF=M.
ESYSID=
Specifies with a SYSID the processor about which information is output.
'sysid'
SYSID of the processor about which information is requested. sysid may be one to three characters long and must be enclosed in apostrophes.
This operand value is to be specified with MF=S or MF=L.
addr
Symbolic address of a field in which the user places the SYSID of the processor.This operand value can be specified with MF=M.
AREA=
Specifies the address of an output area in which MRSINF transfers the requested information.
addr
Symbolic address of a field for accepting the requested MCSF information. This field is to be aligned on a word boundary.
With KEY=ALL, up to 164 output records each 16 bytes in length can be written to this field. The first output record always contains the information about the local processor.
(r)
r =Register containing the address value “addr”. A register can be specified only with MF=M.
AREAL
Specifies the length of the output area for the requested MSCF information.
If the output area selected is too small the output information is truncated. The user is informed of this with a return code.
length
Length (in bytes) of the output area, i.e. the field containing the address “addr”.This operand value is to be specified with MF=S or MF=L.
addr
Symbolic address of a field (halfword) in which the user places the value for the length (as a binary number).
This operand value can be specified with MF=M.
MF=
For a general description of the MF operand, its operand values and any subsequent operands (e.g. for a prefix), see section “S-type macros”. The valid MF values are given at the start of the macro description under “macro type” and are included in the macro format.
A PREFIX can be specified in the C form, D form or M form of the macro and additionally a MACID in the C form or M form (see section “S-type macros”).
Return information and error flags
Standard header:
+---------------+ | | | | | |0|0|b|b|a|a|a|a| +---------------+
The following return code relating to execution of the MRSINF macro is transferred in the standard header (bb=Subcode1,aaa=Maincode).
X'bb' | X'aaaa' | Meaning |
X'00' | X'0000' | Function executed successfully; no error. |
X'01' | X'0001' | Operand values not in the permissible value range. |
X'01' | X'0002' | The output area is too short. Information was truncated. |
X'01' | X'0003' | The output area is not aligned on a word boundary. |
X'01' | X'0004' | An invalid address was output for the output area. |
X'20' | X'0020' | Internal error. The SERSLOG file contains further details on the cause of error. |
X'40' | X'0040' | The specified processor is not known. |
X'40' | X'0041' | The specified SYSID is not known. |
X'40' | X'0042' | The specified SYSID is invalid. |
Other return codes which, in accordance with conventions, apply to all macros are given in the table “Standard header”.
The calling program is terminated when the following errors occur:
The data area is not assigned to the caller.
The data area is not aligned on a word boundary.
The data area is protected against write access.