Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

CHKEI - Check event item

&pagelevel(3)&pagelevel

General

Application area:

Eventing, see "Eventing"

Macro type:

Type S, MF format 1: standard/L/E form; see "S-type macros"

Macro description

The CHKEI macro communicates information to the calling program on the status of the queues associated with the specified event item.

Macro format and description of operands

CHKEI

{{EINAME=name / EINAMAD={addr / (r)} [,EINAMLN=length]}

,SCOPE={LOCAL / GROUP / USER_GROUP / GLOBAL} /

EIID={addr / (r)}}

[,PARMOD=24 / 31]

[,MF=L / (E,..)]

EINAME=name
Specifies the name of the event item. The event item must already have been enabled before the CHKEI macro is issued.
The SCOPE operand must be specified for unique event item identification.

EINAMAD=
Specifies the event item. The event item is unique only if an additional SCOPE operand has been specified.

addr
Symbolic address of the field containing the name of the event item.

(r)
Register containing the address of the field.

EINAMLN=

Specifies the length in bytes of the name of the event item. The length must be at least 1 byte and must not exceed 54 bytes.
If the operand is omitted, the length attribute of the EINAMAD operand is assumed if EINAMAD=addr is specified; if EINAMAD=(r), the maximum length of 54 bytes is assumed.

length
Length of the event item name.

SCOPE=
Specifies the scope of eventing (participants using the event item).

LOCAL
The use of the event item is limited to the calling task.

GROUP
All the tasks with the same user ID as the calling task are participants.

USER_GROUP
All the tasks, whose user IDs belong to the same user group as the user ID of the creating participant, can be participants.

The operand value assumes the existence of user groups and may therefore only be specified when the SRPM function unit of the SECOS software product is available in the system. This is why the GETUGR macro (see the “SECOS” manual [14 (Related publications)]) has to check whether SRPM is available prior to a macro call with SCOPE=USER_GROUP; the program reaction is dependent on the result (return code).

GLOBAL
All the tasks in the system are participants.

EIID=
Specifies the ID of the event item. This ID is supplied to the user by the ENAEI macro. If the ID is used instead of the name of the event item, processing is speeded up. The event item is uniquely identified by the ID.

addr
Symbolic address of the field containing the ID.

(r)
Register containing the address of the field.

MF=
For a general description of the MF operand, its operand values and any subsequent operands (e.g. for a prefix), see "S-type macros". The valid MF values are given at the the start of the macro description under “Macro type” and are included in the macro format.

PARMOD=

Controls macro expansion. Either the 24-bit or the 31-bit interface is generated.
If PARMOD is not specified here, macro expansion is performed according to the specification for the GPARMOD macro or according to the default setting for the assembler (= 24-bit interface).

24
The 24-bit interface is generated. Data lists and instructions use 24-bit addresses (address space <= 16 Mb).

31
The 31-bit interface is generated. Data lists and instructions use 31-bit addresses (address space <= 2 Gb).

Return information and error flags

Register 1 contains the operand list address (during macro execution) and the number of pending SOLSIG or POSSIG macros (after macro execution).

R15:

+---------------+
|   |   |   |   |
|b|b| | | | |a|a|
+---------------+

A structured return code (aa=primary return code, bb=secondary return code) relating to the execution of the CHKEI macro is transferred in register R15.

X'bb'

X'aa'

Meaning

X'28'

X'00'

Function executed: one or more SOLSIG requests in the queue. The number is
specified in R1

X'2C'

X'00'

Function executed: one or more POSSIG requests in the queue. The number is
specified in R1

X'30'

X'00'

Function executed: no requests in the queues

X'0C'

X'04'

No action taken: the event item generated by the system is not allocated to the
calling task

X'10'

X'04'

No action taken: invalid operands were specified

X'14'

X'04'

No action taken: invalid name or invalid ID. There is no event item with the
specified ID

For examples, see the sections “Eventing” ("Eventing") and “Contingency processes” ("Contingency processes") and the SOLSIG macro description ("SOLSIG - Solicit signal request").