外部 CICS 接口
外部 CICS® 接口 (EXCI) 是一个应用程序编程接口,支持在 z/OS® 中运行的非CICS 程序 (客户机程序) 调用在 CICS 区域中运行的程序 (服务器程序) ,并通过使用通信区域或使用通道和一组容器来传递和接收数据。 启动 CICS 应用程序如同由另一个 CICS 应用程序链接到一样。
您可以使用外部 CICS 接口将会话或 管道 (发送进程与接收进程之间的单向通信路径) 分配到 CICS 区域,并通过这些会话传递分布式程序链接 (DPL) 请求。 CICS 区域间通信 (IRC) 设施的多区域操作 (MRO) 设施支持这些请求,每个管道映射到一个 MRO 会话,其中客户机程序表示发送进程, CICS 服务器区域表示接收进程。
每个 EXCI 地址空间有 100 个管道的缺省限制; 当 z/OS 已 IPL 时,可以更改此限制。 此限制可防止 EXCI 客户机垄断 MRO 资源,这可能会阻止 CICS 区域使用 MRO。 此限制在 MRO 和跨系统 MRO (XCF/MRO) 环境中都适用。 allocate_pipe 请求导致发出 MRO LOGON 请求,并且对允许来自所有地址空间的 MRO LOGON 请求总数进行了限制。 当您使用 XCF/MRO 时,这很关键,其中 XCF 组中成员数的限制也会限制 MRO LOGON 请求的总数。
因此,当不再需要管道时,必须确保管道已关闭并取消分配。 在程序终止之前,由用户负责确保客户机程序关闭并取消分配它已打开的管道。 未能释放管道可能会导致由于达到登录限制而导致的错误。
如果 Open_Pipe 请求失败,建议取消分配管道以避免达到登录限制。
- CICS 区域正在支持跨系统 MRO 的综合系统中运行。
- 客户机程序发出的所有 DPL 请求都指定 SYNCONRETURN 选项。
或者,如果 z/OS 映像中没有本地 CICS 区域,那么必须通过在 DFHXCOPT 表中编码 CICSSVC 参数来指定外部 CICS 接口要使用的 SVC 参数。 虽然外部 CICS 接口不支持跨内存访问方法,但它可以使用 CICS XCF/MRO 工具提供的 XCF 访问方法。
使用外部 CICS 接口的客户机程序可以针对不同用户 (在相同或不同的 TCB 下) 操作多个会话,所有这些会话都共存于同一 z/OS 地址空间中,而不会相互了解或干扰。
如果客户机程序连接另一个客户机程序,那么连接的程序将在其自己的 TCB 下运行。
EXCI 编程接口
- EXCI CALL 接口
- EXCI EXEC CICS 接口