![[16.0.0.4 and later]](../ng_v16004plus.gif)
Angel 进程检查 API
使用 Angel 进程检查 API 来检查特定的指定 Angel 进程或缺省 Angel 进程是否正在运行。
BBGZACHK、BGVT 和 ECVT 控制块包含确定给定 Angel 进程是否正在运行所需的指针位置。下表列出 Angel 进程检查 API 或控制块的指针位置。
API 或控制块 | 指针位置 |
---|---|
Angel 进程检查 API | BBGZACHK 控制块的偏移量 0x14 |
BBGZACHK 控制块 | BGVT 控制块的偏移量 0x2AC 如果指针为 NULL,那么未启动任何 Angel 进程。 |
BGVT 控制块 | ECVT 控制块的偏移量 0x234。 如果指针为 NULL,那么未启动任何 Angel 进程。有关 ECVT 控制块的更多信息,请参阅 MVS Data Areas 卷 1 (ABE - IAX)。 |
环境
下表提供调用者的需求。
环境因素 | 需求 |
---|---|
AMODE | 64 位 |
ASC 方式 | 主 |
最小授权 | 问题状态或管理程序状态
|
输入寄存器信息
下表提供 Angel 进程检查 API 的输入寄存器。
注册 | 内容 |
---|---|
1 | 以 null 结束的 Angel 进程名称字符串的地址或 NULL。
|
13 | F4SA 格式的 144 位保存区域。 |
14 | 将返回到的地址。 |
输出寄存器信息
下表提供 Angel 进程检查 API 的输出寄存器。
注册 | 内容 |
---|---|
15 | 如果指定的 Angel 进程正在运行,那么返回码为 0;否则,返回非零 |
用于调用 Angel 进程检查 API 的 BBGZAACK 宏
要简化 Angel 进程检查 API 的调用,可使用位于 ${wlp.install.dir}/dev/api/ibm/zos/BBGZAACK 的 BBGZAACK 宏。
下表提供 BBGZAACK 宏的语法。
语法 | 描述 |
---|---|
name | name:符号。在列 1 中开始 name。 |
ƀ | BBGZAACK 前必须有一个或多个空白。 |
BBGZAACK | |
ƀ | BBGZAACK 后必须有一个或多个空白。 |
ANAME=angelname | A 类地址或寄存器 (2) - (12)。 |
参数
参数说明如下所示:
- ANAME
- 指定要检查的 Angel 进程的名称的地址。包含终止 null,此参数的长度必须为 1 - 55(包含 1 和 55)个字符。使用一个 null 字符指定缺省 Angel 进程。
返回码和原因码
从 BBGZAACK 宏返回控制时,通用寄存器 (GPR) 15 包含返回码。返回码 0 指示发现指定的 Angel 进程且此进程处于活动状态。非零返回码指示未发现指定的 Angel 进程,或者此进程未处于活动状态。
示例
以下示例假设您已将 ${wlp.install.dir}/dev/api/ibm/zos/BBGZAACK 文件复制到 MACLIB。
示例 1
检查缺省 Angel 进程是否处于活动状态。
USING PARMS,5
XC ANGLPARM,ANGLPARM Clear storage / null term
BBGZAACK ANAME=ANGLPARM
ST 15,ANGLRC Store return code
*
PARMS DSECT
ANGLPARM DS CL1
ANGLRC DS F
示例 2
检查名为 ANGEL01 的 Angel 进程是否处于活动状态。
USING PARMS,5 XC
ANGLPARM,ANGLPARM Clear storage / null term
MVC ANGLPARM(7),ANGLNAME Copy angel name
BBGZAACK ANAME=ANGLPARM
ST 15,ANGLRC Store return code
*
LTORG
ANGLNAME DC CL7'ANGEL01'
*
PARMS DSECT
ANGLPARM DS CL8
ANGLRC DS F