📅  最后修改于: 2020-11-22 16:31:44             🧑  作者: Mango
前面描述的五个CICS系统组件是对CICS系统程序的便捷分组,每个程序执行其自己的专用功能。 CICS的核心称为CICS Nucleus,它由IBM提供的CICS控制程序和控制表组成。
CICS核由控制程序和相应的控制表构成。它具有独特的优势。它使CICS系统具有高度的灵活性,因此易于维护。以下是CICS的重要控制程序-
TCP被称为终端控制程序。
TCP用于接收来自终端的消息。
它满足硬件通信要求。
它要求CICS启动任务。
KCP被称为任务控制程序。
KCP用于同时控制任务的执行及其相关属性。
它处理与多任务有关的所有问题。
PCP被称为程序控制程序。
PCP用于查找和加载要执行的程序。
它在程序之间转移控制,最后,将控制返回给CICS。
FCP被称为文件控制程序。
FCP用于为应用程序提供诸如读取,插入,更新或删除文件中的记录之类的服务。
它保持对记录的排他性控制,以便在记录更新期间保持数据完整性。
SCP被称为存储控制程序。它用于控制CICS区域内存储的分配和释放。
CICS由IBM提供的CICS控制程序和表组成。这些表需要使用应用程序信息进行相应更新,以成功执行CICS应用程序。以下是重要的控制表-
TCT被称为终端控制表。
当我们登录到CICS终端时,将在TCT表中进行输入。
TCT包含连接到当前CICS区域的终端ID。
终端控制程序与终端控制表一起识别来自终端的输入数据。
PCT被称为程序控制表。
它包含事务处理ID(TRANSID)和相应的程序名称或程序ID。
TRANSID在PCT表中是唯一的。
PPT被称为处理程序表。 PPT包含程序名称或Mapset名称,任务使用计数器,语言,大小,主存储地址,加载库地址等。
程序或Mapset名称在PPT表中是唯一的。
CICS接收交易,并且从PCT中为交易分配了相应的程序名称。它检查程序是否已加载。如果已加载,则任务使用计数器加1。如果未加载程序,则首先加载程序,并将任务使用计数器设置为1。它将从PPT表中获取加载库地址。
FCT被称为文件控制表。
它包含文件名,文件类型,记录长度等。
CICS程序中使用的所有文件必须在FCT中声明,并且它们由CICS本身打开和关闭。
当在CICS终端上输入事务标识符TP02时,首先它将检查PCT表中是否存在与此事务标识符相关联的程序。如果找到一个,则它将在PPT表中签入以找到要执行该程序的位置。
如果程序已经在内存中可用,它将开始执行该特定程序;否则,它将开始执行该程序。如果不是,它将从辅助存储器将程序加载到存储器中,然后开始执行它。
事务生命周期具有以下步骤-
终端运算符通过键入1到4个字符的交易ID并按Enter键来启动交易。
TCP定期检查所有终端的输入。收到消息后,它将执行以下操作-
指示SCP创建TIOA。
将消息放入TIOA。
将控制权传递给KCP。
KCP从TCP取得控制权,并执行以下操作-
验证事务ID和安全性。
指示SCP创建任务控制区域。
根据终端优先级(在TCT中设置),操作员优先级(在SNT中设置)和事务优先级(在PCT中设置)为任务分配优先级。
将任务添加到等待程序的队列中。
按优先级调度等待程序。
将控制传递给PCP。
PCP从KCP获得控制权,并执行以下操作-
找到程序并加载(如果需要)。
将控件转移到应用程序。
应用程序从PCP获得控制权,并执行以下操作-
请求TCP将消息放入程序的WORKING STORAGE区域。
请求FCP从文件中检索记录。
FCP从Application程序获取控制权,并执行以下操作-
向SCP请求文件工作区。
通知KCP该任务可以等待直到I / O完成。
KCP执行以下操作-
分派队列中的下一个任务。
I / O完成后,重新调度旧任务。
将控制权转移到FCP。
FCP将控制权返回给应用程序。
应用程序执行以下操作-
处理文件数据。
请求TCP发送I / O消息。
将控制权返回给PCP。
PCP将控制权返回给KCP,要求其结束任务。
KCP指示SCP释放分配给任务的所有存储(TIOA除外)。
TCP执行以下操作-
将输出发送到终端。
请求SCP释放TIOA。