寻址方式影响

除非在启用出口程序时指定 LINKEDITMODE 选项,否则将在调用者的 AMODE 中调用与任务相关的用户出口 (TRUE) 程序。

LINKEDITMODE 选项在其链接编辑 AMODE 中启用与任务相关的用户出口程序。 因此,如果 TRUE 是链接编辑的 AMODE 31 ,并且通过 LINKEDITMODE 选项启用,那么可以将其放置在 16 MB 以上但 2 GB 以下。 有关 EXEC CICS ENABLE 命令的 LINKEDITMODE 选项的编程信息,请参阅 ENABLE PROGRAM 命令

重要信息: 如果 TRUE 是链接编辑的 AMODE 24 ,请勿使用 LINKEDITMODE 选项。 此组合强制 TRUE 始终运行 AMODE 24 ,出于以下原因,这是不需要的:
  • 不能从使用 TASKDATALOC (ANY) 运行的事务调用 AMODE 24 TRUE。 结果是 AEZB 异常终止。
  • 对任务启动启用 AMODE 24 TRUE 程序会导致 CICS® 强制所有事务与 TASKDATALOC (BELOW) 一起运行。
  • 在 CICS 终止调用上,如果 CICS 检测到运行 TRUE 的 TCA 高于 16 MB 界线,那么 CICS 将忽略 LINKEDITMODE 选项并在 AMODE 31 中调用 TRUE。 这是因为对于某些类型的终止 (例如取消) ,将运行 TRUE 的 TCA 未预先确定。
关于 TRUEs 的建议如下:
  • 编写 TRUE ,以便它可以始终运行 AMODE 31。
  • 链接-编辑 TRUE AMODE 31。
  • 使用 LINKEDITMODE 选项启用 TRUE。

不支持 AMODE 64 TRUEs。

如果未使用 LINKEDITMODE 选项 EXEC CICS ENABLE启用与任务相关的用户出口程序,那么将在调用者的 AMODE 中调用该程序。 例如,对于应用程序请求,如果在 DFHRMCAL 请求时应用程序是 AMODE 24 ,那么将在 AMODE 24 中调用与任务相关的用户出口程序。 因此,在没有 LINKEDITMODE 选项的情况下启用的与任务相关的用户出口程序必须位于 16 MB 线以下。