CICS的全称为Customer Information Control System,即客户信息控制系统的意思。CICS最初为S/370上的一个程序产品,迄今已有将近40年的发展历史。CICS同DB2一样,也是支持多种操作系统的,但目前仍然主要用于大型机的操作系统z/OS。
CICS在大型机上的版本依次经历了1.7版、2.1版、3.1.1版、3.1.2版、3.3版、4.1版等等。当CICS发展到5.x版本后,便被称作CICS TS(CICS Transaction Server)。虽然先后经历了多个版本,但CICS本身仍然为通用的数据库/数据通信(DB/DC)系统。CICS系统本身主要是通过PL/x语言编写的,该语言同PL/1语言比较类似。CICS在应用程序方面最显著的特征是提供了界面功能和交互功能。基于其强大的交互能力,CICS广泛应用于各种大型商务领域。以下列举了其中的几项常见应用领域:
q 银行ATM交易处理系统
q 航空订票系统
q 保单处理系统
q 大型ERP系统
q 在线图书馆
作为CICS中的联机处理,是同批处理相对应的一个概念。其中批处理是指在用户不直接干预的情况下,系统对批量资源在规定时间内,进行例行处理的过程。批处理主要有以下特点:
q 所有需要用到的I/O区和工作区都应在程序中进行定义。
q 由程序读入批量的输入数据。
q 输入数据必须在处理开始前准备就绪,在处理过程中不得再次插入。
q 程序直接向操作系统发出I/O指令。
q 如果出现故障,处理可重新进行,或从故障点继续向后处理。
联机处理是指在用户直接干预的情况下,系统根据用户的输入在短时间内进行交互式处理的过程。联机处理主要有以下特点:
q 用户可在不同地点,通过不同的终端使用同一台主机。
q 数据可随时输入到系统中,而无须积累成批量后再输入。
q 对终端的处理请求具有实时性的响应。
q 输出信息通常直接在用户所在终端上显示。
q 可对同一个文件同时进行多种操作。
q 用户可在任何时候通过终端启动应用程序,而无须经过操作员的调度安排。
CICS作为一种中间件,是存在于操作系统和应用程序之间的一个子系统。CICS实际上是在操作系统控制下的一个分区中作为一个主程序运行。而其他联机应用程序则是在CICS的控制下运行的。图为包含有CICS的系统架构。
有上图可以看到,CICS通常是结合DB2使用的。实际上,DB2同CICS一样,也属于一种中间件。CICS所处的位置实际上为操作系统和应用程序之间的事务管理层。借助CICS,应用程序不必直接同操作系统打交道,由此可以减轻操作系统的负担。同时,由于操作系统的负担得以减轻,因此也可满足更多潜在的用户和要求处理的事务。
最后,CICS作为一个子系统,为运行于其上的应用程序提供了类似于操作系统的管理功能。这些管理功能主要有以下几项:
q 任务管理
q 文件管理
q 程序管理
q 队列管理
q 终端管理
q 系统服务
q 恢复机制
q 外部安全管理