2006年12月7日星期四

CICS概述(转)

转自http://sse0308.blog.sohu.com/9351604.html

1、CICS(Customer Information Control System)客户信息控制系统使IBM公司的联机事务管理系统。 事物包含四个属性,即ACID属性:原子性(Atomicity)、一致性(Consistency)、孤立性(Isolation)、持久性(Durability).

2、CICS家族之所以强大,是因为:

1)它具有商务级事务管理器要求的整合性、可恢复性、安全性和可用性,是个强有力的联机事务处理管理系统;
2)CICS提供跨平台的API,形成可移植的应用和开发技术;
3)它跨平台的广泛的可操作性,即它的跨系统通信ISC(Intersystem Communication)能力。

3、CICS事务处理过程
既然CICS是OLTP系统,它应该是面向终端的系统。那么CICS是如何处理事务的?它应该包含如下三步:
(1) 提交事务交给CICS;
(2) 处理工作;
(3) 当工作完成后终止和清除。

绝大多数事务是从终端进入cIcs的。当一个事务从终端进入门Cs,CIcs初始化一个任
务(Task)来处理该消息,并且创建用于表示该任务的控制块。基于已有的在该clcs区域的资
源定义,clcs确定该事务所用的程序,并将该程序装载于内存。而程序中的EXEc cICs命令
则是要求服务。还可以通过其他途径来初始化任务,但终端输入是最普通的一“种。
clcs是通常作用的事务管理系统,具有终端管理、任务管理、安全管理、程序管理、文件管
理、队列管理、恢复管理和系统服务(如存贮、时间、APl)等管理功能。
CICS任务处理过程如下:
假如用户从终端输入或从菜单选择事务INQY,INQY的事务程序为PROGl终端管理,
则请求创建一个任务(船sk)来处理该事务》
(1)任务管理确定事务的ID是否在CIC5区域中定义,如果否,发出错误信息。
(2)如果事务ID已定义,任务管理请求存贮并且创建表示任务的控制块。
(3)如果事务ID是被安全保护的,cICS验证用户的使用权限。
(4)该任务需要运行应用程序,事务定义中应该包含要执行的第一个程序名PROGI。
(5)在程序定义表中找所要运行的应用程序阳OGl的定义(其定义指明了该程序的实
现语言)。如果程序PROGl不在内存,程序管理则申请内存将其从程序库装入内存。
(6)CICS复制该程序PROGl的工作存储区到与该任务(ta5k)相关的另一存储区。允许
PROGl的单独程序副本被多任务共享。
(7)EU(EXEC Interface Progfam)接受程序请求并且返回异常条件和其他EIB(ExEC
Interface Block)信.富,
(8)如果执行程序prog1发出EXECCIC5READ命令来读文件,文件管理则对VSAM
发出读iZ录的请求。
(9)应用程序常常利用基本映原支持(BM5)来发出已格式化数据到终端。
(10)对V5八M数据集的改变,会被建立日志以便失败时恢复。
(11)当任务结束时,控制返回给clcs。所有与该任务相关的存储被释放
内存,直到无任何任务使用它和该空间要使用为止。

4、编程接口
1) 开发语言
与编写其他程序一样,可用COBOI、C、C十十、Assembler、PL/l来编写CICS的应用程序
其中大部分处理逻辑用标准语句编写,一部分功能要用到CICs的命令。
2) 命令格式
 (1)举例如下: 
EXEC CICS SEND FROM (MSG-AREA) LENGTH (5) END-EXEC
关链字 功能 选项 参数 选项 参数 分隔符
以上命令是向终端发送长度为5的MsG—AREA信息。
 (2)读和修改vsAM文件的命令为:
EXEC CIC5 READ FILE ('FILEA') INTO (CUSTOMER—REC) RIDFLD (CUSTOMzR—NUM)

没有评论: