• 1. IBM S/390 事务处理 CICS 栾 天 E-mail:victor2131576@126.com
  • 2. 第一章 CICS 概述 CICS 是 IBM 最流行的事务管理系统。被广泛的应用于当今 信息产业领域的分布式事务处理环境中,成为事务处理环境中的 佼佼者。CICS现有从桌面到主机环境各种不同平台和操作系统的 产品,如CICS/VSE, CICS/MVS, CICS/400(for AS 400) , CICS/6000(for RS6000), CICS for OS/2, CICS for Windows/NT.
  • 3. 1.1 CICS 的特点 (1)    它具有商务级事务管理器要求的整合性、可恢复性、安全 性和可用性,是个强有力的联机事务处理管理系统; (2)    它提供跨平台的API,形成可移植的应用和开发技术; (3) 它有跨平台的广泛的可操作性,即它的跨系统通信ISC能力。
  • 4. 1.1.1 OLTP的概念商业事务(Business Transaction) 商业交易是现实世界中,在企业与客户之间,进行的包含钱、产品、信息、服务等方面的交换。如付帐、产生订单、航空定票或从ATM机的取钱等。 特点   多用户、高可用性、快速的响应时间、数据一致性,共享性、可重复性以及低开销成本等特点。
  • 5. What is CICS?应用程序CICS操作系统DatabaseFiles
  • 6. 事务(Transaction)
  • 7. 事务处理要求的特性: 原子性(Automicity): 一个事务中若干相关操作作为一个完整的单元进行处理,要么整个完成(Commit),要么一点不做(Rollback)。 一致性(Consistency): 如果事务发生前相关数据是一致的,事务完成后数据必须仍然一致。 隔离性(Islation):各个事务之间可以独立运行,互不干涉。一个事务只能看到另一个事务发生前或发生后的数据,而不能接触另一个事务运行中的数据。 持久性(Durability):当一个事务完成后,他所涉及的数据能够持久地保持在系统中。这一特性使得在系统发生崩溃时,相关的数据不至于丢失错乱,在系统恢复后能够恢复交易数据。
  • 8. 交易(事务、Transaction):交易是CICS处理的基本单元,是指由一个或多个终端用户 (终端、用户、程序) 使用一个或多个应用程序,一个给定的事务可以被多个终端用户使用。CICS系统中的每一个交易都被赋予一个交易ID,它由4位字符串组成。终端用户在终端上键入这4位的字符串,例如EMUL、ATMP就能启动相应的事务处理程序。这4位字符串的命名及与其有关的其它信息都是由用户在资源定义时设定的。
  • 9. CICS联机事务处理的主要特点[6]: ①多用户:联机事务处理可同时为多个联机用户提供服务,允许在组织结构中的用户同时进行业务处理。 ②重复性:联机事务处理可提供同一业务重复处理。 ③短交互性:联机事务处理支持对多用户同时进行交易的处理,给予每一个用户及时的响应。 ④数据共享:反映同一组织结构的数据只有一个。 ⑤低成本:联机事务处理能降低客户业务处理的成本。
  • 10. OLTP(On-Line Transaction Processing)客户终端客户终端客户终端事务2事务1事务3OLTP 处理程序数据
  • 11. Transactions Each transaction in CICS has a four-character transaction identification (TRANSID) which describes the function that the transaction performs.
  • 12. TaskIn CICS, an instance of a particular transaction request by a computer operator or user is called a task. When a user invokes a transaction, CICS begins a task for that request. CICS also loads any application programs required for the transaction.
  • 13. TaskThese steps are involved in processing a transaction: 1) Entry – A transaction ID (TRANSID) enters the CICS system. 2) Task creation – CICS creates a task to process the transaction. The task is now ready to be run. 3) Dispatch – CICS determines which of the ready tasks should be run next, and dispatches that task to be started. 4) Execution – The task invokes the appropriate CICS program and runs. (continued)
  • 14. Online transaction processing—task5) Processing – When the invoked program calls CICS to perform a service on its behalf, the task gives up control of the CPU and waits for the requested service to be completed. 6) Redispatch – After the requested service has been completed, the task is ready to run again, and CICS dispatches it again. 7) Return – When all work required to process the TRANSID is done, the program issues a RETURN command to return control to CICS. 8) Termination – CICS removes the task from the system.
  • 15. 区域/事务/任务/程序(Region/Transaction/Task/Program)
  • 16. OLTP的应用典型应用 Automatic Teller Machine Online Banking Insurance Systems Order Entry and Processing Systems Retail Distribution System Airline Reservations
  • 17. 联机程序 批量程序
  • 18. Batch VS. Online
  • 19. 1.2 CICS处理事务的步骤 (一) (1) 任务管理确定事务的ID是否在CICS区域中定义,如果否, 发出错误信息。 (2) 如果事务ID已定义,任务管理请求存储并且创建表示任务的 控制块。 (3) 如果事务ID是被安全保护的,CICS验证用户的使用权限。 (4) 该任务需要运行应用程序,事务定义中应该包含要执行的第 一个程序名PROG1。 (5) 在程序定义表中找所要运行的应用程序PROG1的定义(其 定义指明了该程序的实现语言)。如果程PROG1不在内存 ,程序管理则申请内存将其从程序库装入内存。
  • 20. 1.2 CICS处理事务的步骤 (二) (6)CICS复制该程序PROG1的工作存储区到与该任务相关的另 一存储区。允许PROG1的单独程序副本被多任务共享。 (7)EIP接收程序请求并且返回异常条件和其他EIB信息。 (8)如果执行程PROG1发出EXEC CICS READ 命令来读文件 ,文件管理则对VSAM发出读记录的请求。 (9)应用程序常常利用基本映象支持(BMS)来发出已格式化的 数据到终端。 (10)对VSAM数据集的改变,会被建立日志以便失败时恢复。 (11) 当任务结束时,控制返回给CICS。所有与该任务相关的存 储被释放,但程序保留在内存,直到无任何任务使用它和该 空间要使用为止。
  • 21. 1.3 开启停止CICS系统1.3.1 启动CICS CICS/MVS的启动可以作为被开启的任务或用TSO提交 CONSOLE: S CICSXXXX TERMINAL: LOGON APPLID=CICSXXXX 1.3.2 关闭CICS 从终端或控制台键入命令:CEMT PERFUM SHUTDOWN 关闭CICS/6000,可用其SMIT工具来做
  • 22. 1.4 CICS互连 能够处理大的多的事务量,对工作组系统作倾印处理、减少有弊病应用的映象;可协同处理;CICS系统与非CICS系统可共同参与;可提高性能(减少或消除虚拟存储限制,通过倾印提高资源利用率);实用性。
  • 23. 第一章 结束
  • 24. 第二章 CICS提供的交易
  • 25. CICS提供的交易Unit Objectives List several CICS-supplied transactions Describe the services of the primary CICS-supplied transactions Describe the primary functions of the terminal transaction Use CEMT command to inquire about system resources and to control them
  • 26. Transactions(1/2)FunctionCICS-supplied TransactionSign onCESNSign offCESFMonitor and Control CICS ResourceCEMTMessage switchingCMSGCreate Request Model for EJB’sCREAResource Definition online (RDO)CEDACEDBCEDCCICS DB2 interfaceDSNC OR CEMT
  • 27. Transactions(2/2)Processing and Debugging ProgramsCMACCECICEBRCEDFCEDXDB Control InquiryCDBIDB Control InterfaceCDBMDB Control MenuCDBC
  • 28. Connecting to CICS
  • 29. Signing On to CICS
  • 30. Monitoring and Controlling the System- CEMT
  • 31. Monitoring and Controlling the System- CEMTCEMT: make changes or adjustments to the CICS system while it is active and running: Inquire and change the values of System parameters Alter the status of the system resource Terminate task Shut down the CICS task
  • 32. Managing CICS Resource Definitions
  • 33. Managing CICS Resource DefinitionsThree transaction used to managing resources: CEDC: used to display definition CEDB: to define and alter definition CEDA: all above, plus install resource into a running system
  • 34. Messaging Switching (CMSG)
  • 35. Researching Messages (CMAC)
  • 36. Checkpoint QuestionsT/F you can usually change properties of CICS resource using the CEMT inquiry function Which CICS transactions can you use to define resources to your CICS system while the system is running? Which CICS transactions can a operate to shut down the CICS system? Which of the following statements are true? A. You can use CEOT to determine your terminal name. B. you can use CEBR to view transient data queues. C. you can use CEDF to look at every line of code in your application program. 100个终端用户都输入事务ID(TRA1),程序是PROG1,有多少个事务?假设没有其他活动,有多少个任务?