CICS及联机事务处理系统概述CICS技术_第1页
CICS及联机事务处理系统概述CICS技术_第2页
CICS及联机事务处理系统概述CICS技术_第3页
CICS及联机事务处理系统概述CICS技术_第4页
CICS及联机事务处理系统概述CICS技术_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1CICS技术文档第一章CICS及联机事务处理系统概述通过多种设备和渠道连接到业务处理系统中来,每一个效劳恳求在业务处理系统中以一个事务的方式运行,通过对确定业务数据的处理来完成客户的恳求,并向客户返回数据。1-1所示。OLTP应用的常见例子是银行业务系统和航空订票系统。OLTP系统中,发生的每笔业务处理,都是一个事务,业内通常称之为交易。比方现在流行ATM机上存取现金。这些都是典型的事务。它要符合一个事务所必需具有的ACID四个特性〔详见1.2节〕,只有这样才能保证系统的可用性。图1-1联机事务处理系统环境事务就是对于某种要求进展处理并返馈结果的一个完整处理过程。在这种类型的处理程序中,有大量的相像的处理要求,联机事务治理系统就是供给事务处理中需要的通用规律处理功能,使用户的业务处理程序能够专注于应用本身的规律的软件系统。事务处理要求的特性〔ACID〕:原子性(Atomicity):一个事务中假设干相关操作作为一个完整的单元进展处理,一个单元中的全部操作,要么整个完成〔Commit〕,要么就得完全恢复到事务发生之前的状态,似乎什么也没发生过一样(Rollback)。全都性(Consistency):事务必需在两个全都的状态间移动数据,并以一种可重复的方式操作。假设事务发生前相关数据是全都的,事务完成后数据必需照旧全都。在事务内部由于数据处理的先后,可能消灭数据的不全都,但在事务完成后外部数据要到达全都。假设重复某一事物,它总是按一样的规律执行。隔离性〔Isolation〕:各个事务之间可以独立运行,互不干预。一个事务只能看到另一个事务发生前或发生后的数据,而不能接触另一个事务运行中的数据。长期性〔Durability〕:当一个事务完成后,他所涉及的数据能够长期地保持在系统中。这一特性使得在系统发生崩溃时,相关的数据不至于丧失错乱,在系统恢复后能够恢复交易数据。图1-2事务的ACID属性一类是联机事务处理程序,一类是批量数据处理程序。联机程序是在某种联机事务治理系统如CICS系统的环境中运行的很多小程序,一个或多个小程序组合在一起,以一个事务的形式在运行,它们相应某种特定的恳求,完成某种特定的操作。客户的需求是随机消灭的,联机应用程序是依据客户的要求随机地被调起,任意一个大事内都有很多个事务在同时地被处理,而每个事务一般只要处理很小一局部数据操作。把握启动,运行时间比较长。7*24小时的支持,一般要承受各种技术手段来支持联机系统的不连续运行。联机应用系统设计须考虑因素在1970年甚至1980年以前,大多数程序都是以批处理方式处理,其特征是输入、处理、输出整个过程连续进展,其间不能输入的数据并得处处理结果的输出,假设用户要交互式输入数据并即时得处处理结果的输出,这时批处理就显得暗淡无色,为了解决这个问题,需要一个联机处理系统,即使用终端能直接得到来自数据文件或数据库的信息,也就是直接对数据文件或数据库进展存取。换句话说:需要一个数据库/数据通信系统,即DB/DC系统。数据库文件操作系统硬件理和数据处理有本质的区分,事务是指在某一大事中,参与大事的各主体均发生了状态的变化,数据库文件操作系统硬件业务规律多线程应用通信时间把握数据治理队列治理图1-3传统的联机处理系统架构在事务过程的模式中,如订票系统,最终用户需要的是能否卖票,能否退票,并不关心在卖票或退票事务中转变了哪些数据,由于数据库效劳软件供给的是数据效劳,所以仅基于数据库1-2所示,实际上相当于程序开发人员自己为应用开发一个事务处理软件来进展多线程应用、通信处理,时间把握等等,这将大大消耗开发人员的时间和精力,使得开发人员无法关注于客户最关心的业务规律,因此最终会觉察客户业务需求没被满足,另外应用的开发维护的难度增大了,开发的进度被拖延了,应用和数据的安全性不尽如意等等,要解决这些问题就得对系统模式进展改进。能剥离出去,那么开发人员就能关注于客户的业务规律处理了,这样做出来的应用程序毫无疑问最能满足客户的业务需求。而那些剥离出去的功能可以中间件的形式托付第三方专业厂商开发,供很多应用程序共享,这其实就是一种典型的软件重用思想。硬件硬件1-4引入事务治理层的联机事务处理系统IBM公司在全球银行应用交易处理解决方案中的核心是IBM公司的世界领先的事务处理效劳器CICS。CICS是一个联机事务处理平台软件,它帮助客户建立三层次构造的联机事务处理应用。治理,以及其它一些根本设施和功能。操作系统一般对批处理作业有相当好的支持,而对于大量的随机性的,对响应时间要求甚高的联机事务处理,客户则通常寻求特地的联机事务处理平台软件的支持,CICS则是此行中的佼佼者。CICS是IBM公司1969其效劳器版本可运行在OS/390、MVS/ESA、VSE/ESA、OS/400、OS/2、WindowsNT、AIX、Solaris和HP-UX上,其客户机版本可运行SCOOpenServer、OS/2、DOS、Windows3.1、WindowsNT、Windows95、AppleMac、AIX、Solaris、HP-UX、SINIX、DigitalUnix上。CICS经过了近40CICS几乎每年依据客CICS在1978年就支持了分布式联机事务处理,CICS在近年来进展了对MQ、LotusNotes、Webshpere、Internet、JAVA、WEBService和SOA的支持。CICS已经在金融、财税、运输、商业、效劳、电力、等行业中得到广泛应用和推广。统500家的公司,约有97%承受CICS作为其联机业务系统的平台。CICSCICS供给了交易处理中的共同需要的几乎全部功能模块,如:恳求接收处理错误资源治理可联接性日志时序把握交易恢复交易治理动态平衡应用效劳

安全治理 性能监控规律锁 多线程并行交易调度 交易授权交易全都性完成队列效劳治理因而客户仅需要将他们的留意力集中在他们的交易规律上CICS可有效地善用系统内存,CPU可用性,可扩展性,更使系统发挥至最高境地,保证全都及良好的响应时间。而这些程序由于不依靠于某一种通讯协议,也不依靠于某一种数据库治理软件,也不依靠于某一种操作系统和硬件平台,因此,由CICS构建的交易处理环境中,TCP/IP和APPC可以共存,IBMDB2和Informix,Sybase,Oracle可以共存,AIX和MVS/ESA,OS/400,WindowsNT等可以共存,而应用程序均能很简洁地协作和相互移植。CICS的构造设计也是面对交易处理的,CICS构建的是一个三层次构造的应用系统,CICS有效地区分应用系统中的表述规律层,交易规律层和数据规律层,从而使应用系统构造清楚,维护简洁易行。在CICS公开,对数据的访问都是由当地的交易规律把握的,从而大大提高了跨地和跨效劳器之间的的交易处理的效率和安全性。这对目前银行中所需要推出的通存通兑业务、实时转帐业务等有重要意义。IBM公司很愉快看到其客户利用CICS已经格外精彩地完成了对这类业务的效劳,而且积存了贵重的阅历。CICS在其效劳器端支持C、COBOL、PL/1语言,承受统一的应用编程接口(API),CICS的编程语句可以和SQL的编程语句共同存在于应用程序中。CICS在其客户机端支持C和COBOL语言,也承受统一的应用编程接口(API),客户可以承受两种方式来编制CICS的客户端程序,一种是ExternalCallInterface(ECI),另一种是ExternalPresentationInterface(EPI)。CICS通过对Notes,Internet和JAVA的支持,目前正使INTERNET网上交易的实施如火如荼,透过CICS来实施网上银行,IBM公司及其客户已经取得了成功的阅历,并且预备好在其它客户中推广。在三层次分布式应用架构之中,CICSCLIENT系统)的操作。CICS与数据库之间是CLIENT与SERVERCICS通过标准的XA接口向数据库提出效劳恳求并确保该交易的完整性与数据的全都性。CICS完整的体系构造保证了CICSSERVER与数据库之间连接的灵敏性。同一个CICSSERVER可以同时与多个INFORMIX(或其他)数据库建立连接,而且这些数据库可以与CICSSERVER位于同RS/6000作事务处理(CICS)效劳器,而用一台HP/9000作为INFORMIX效劳器。CICS的强大的DTP功能使得任一个CICSSERVER可以协调分布在自ES/9000,AS/400,UNIX到PC且不同平台上的CICSSERVER可以连接各自不同的数据库。CICSCLIENT与CICSSERVER之间可以承受TCP/IP,NETBIOS,SNA或RPC协议,其连接方式也是多种多样的:不同的CICSCLIENT上的ECI应用可以选择以不同的协议连接至不同的CICSSERVECICSCLIENSolaris,HP-UX,SINIX,AIX,Digital-UNIX)。5510图1-5CICS客户/效劳器模式对于CLIENT应用,您可以承受任何GUI开发工具(如POWERBUILDER,VisualBasic,C++,C#,JavaCICS〔ExternalCallInterface,ECI〕调用恳求不同CICSSERVER上的多种效劳。CICS根本概念和术语1〔REGION〕:CICSREGION由一组CICSREGION的全部配置信息、它所治理的各种资源〔交易、程序、数据等等〕组成,是一个独立CICS环境。每个CICS区域启动后,操作系统都会给它安排存储区域,这这些存储区域由CICS进展治理和使用,它又称为地址空间〔Addressspace〕。用户程序和其他CICS部件共享这些存储区域。2、事务〔TRANSATION〕:一个事务〔交易〕CICS1--4字符的名字标识称为事务ID(TRANSID),分别使用不同的程序完成不同的任务,在一个CICS区域中,可以同时运行多个事务。在CICS中,一个事务(transaction)就是指一组相关联的操作序列或为了完成一个特定功能的一组步骤。一个事务可能涉及一个操作或一组操作。比方学生课程注册处理时对数据库的一系列更操作:读取用户注册恳求检查相关课程的当前注册状况确定能否再增加一名学生将学生参与相关课程班的花名册向用户发出事务成功确认信息CICS事务除了标准事务的ACID属性外,还有两个特点:处理对象是两个客体。一个是终端用户;一个是被处理的数据对象;每个处理过程是由终端用户或程序提交一个简洁恳求而启动的。3、任务TASCICSCICS中,操作员或用户恳求的特定交易的一个实例被称为任务(TASK)TASK就是一个TRANSACTION的一次执行过程。用户可以通过屡次执行同一个TRANSACTION,同时产生多个TASK。启动TASK的方法:终端用户在终端键入TRANSACTION标识,从而启动相应的交易,建立一个TASK。CICS会自动调入交易需要的任何应用程序。CICS时,CICSTASK来响应并跟踪这个恳求和它的相关工作。然后装入为了执行TASK所需的程序。任务环境,在一个CICS区域中,可以同时运行处理同一事务的多个任务。100个用户同时在终端上输入INQ1,那系统中有多少个事务?假设系统中没有其他活动,那么应当有多少个TASK?4、事务程序TRANSACTIONPROGRA成一段特定的处理,每个程序有一个最多8个字节的程序名字。程序通过调用CICSAPI可以把握和使用CICS资源来完成自己的任务。CICS的功能任务治理程序治理系统资源治理把握数据存取及更数据数据通信终端治理时间治理安全性治理恢复治理工作负荷安排1-6CICS的功能任务治理CICSREGIONTASKCICSREGION而减小冲突和系统超负荷的时机。程序治理程序治理效劳用来将任务与执行其工作的应用程序联系起来。虽然很多任务可能需要使用一样的应用程序,但程序把握只在内存中装入一份代码副本。每个任务各自独立地执行代码,所以很多用户能使用应用程序的同一个物理副原来并行地运行全部的任务。系统资源治理CICSREGION将应用程序从不得不与操作系统协商以获得和释放资源中释放出来在处理的任务需要与其他任务共享CPU、申请内存以存放用户数据、需要用于临时计算的内存小区域,并且有时它需要数据通信通道、数据文件和数据库。对于全部的这些,都可通过CICSREGION从操作系统得到。CICSREGION把资源安排给需要的任务,当这些任务完成它们的处理或特别释放一个资源时,它又负责收回这些资源。数据存取治理CICSREGION存取,并维持数据更的完整性。例如,它同步更、记录更改并恢复不确定的更。还能使用安全性效劳来保证只有特许的用户可访问和更数据。CICSREGION把握数据存取和更,这使得应用程序不需要代码与特定的数据治理器交互,当一个任务的程序恳求数据时,CICSREGIONREGION将供给应这个任务的资源释放,以便让其它事务处理任务或其它程序使用。数据通信为了使很多用户能同时工作,CICSREGIONREGION还保证以与用户设备兼容的方式发送显示数据。终端治理终端治理供给设备独立性,使应用程序能以一种标准的方法与任何类型的终端通信。CICSREGION查询用户的设备并确定用于应用程序输出的最优特性REGION可以使用模型来影响它的特性选项并用终端定义来应用设备的特别性能。时间调度治理时间治理效劳使程序能启动和把握一系列取决于时间的操作--例如,在一天的某个时间启动一个事务〔任务〕和在一个指定的时间段过去时发出信号。这些效劳还能把以日期和时间为标记的大事记录到磁盘上,用于记帐或确保数据的完整性,并能启用CICSREGION确实定程度的自动化。安全性治理CICSREGION供给安全性来阻挡非法登录并保护个别资源(程序、文件等等)不被其它全部而不是某些用户使用。安全性治理效劳供给CICS内部安全性、外部安全性治理器(RACF)、DEC安全性效劳或它们的某些组合执行检查所需的数据。恢复治理CICSREGION保证业务系统及其数据总是处于全都状态。万一应用程序或系统发生故障〔REGION〔假设需要生时进程中未完成的工作(包括数据的更改)。假设它不能提交某一任务的数据更改,REGION动态地把更改逆序恢复到系统最终在全都状态的那一点。工作负荷安排可以跨越多个CICSREGION安排事务以使工作负荷由多个REGION来担当。可以预先定〔即在收到恳求的CICSREGION上REGION在那儿运行,还是动态地传到能运行该事务的任何REGION。CICS的架构CICSTS成分的工作,使得CICSTS的用户在通过事务处理的手段访问CICSTS时,对CICSTS所使用的物理设备、数据存储地址等都是进展透亮访问的。这些根本成分主要分为三大类:治理模块、把握块和把握表。所以也可以说CICS系统就是由一系列治理模块、把握块和把握表所组成的。接下来对这些治理模块、把握块和把握表进展简洁介绍。治理模块任务治理终端治理时间治理文件治理存储治理程序治理临时存储治理瞬时数据治理治理模块是CICSTS的系统把握程序,充当操作系统和应用程序之间的接口,每一个治理模块完成一个特定的功能。主要治理模块有KCP、TCP、SCP、PCP、FCP、TDP、TSP和任务治理终端治理时间治理文件治理存储治理程序治理临时存储治理瞬时数据治理1-6治理模块的相互关系任务治理其功能由任务把握程序KCP(TaskControlProgram)CICSTS分区内部CPU的使用,建立任务,并实现多个任务的并发执行。终端治理其功能由终端把握程序TCP(TerminalControlProgram)实现,供给用户终端和应用程序之间TCPTCP利用终端把握表TCT以及远程通信存取方法(BTAMVTAM)TCPCICSTS启动时,马上调用执行,等待接收终端上的输入。时间治理其功能由时间间隔把握程序ICP(IntervalControlProgram)实现。供给“日时钟”和“间隔定时器”效劳,ICPKCP可共同实现以下功能:检测系统终止。检测无终止任务。限制CICS空载时间。在指定的时间间隔之后产生信息。启动与时间有关的事务。最终两个功能实现CICSTS的实时把握。文件治理(FCP)其功能由文件把握程序FCP(FileControlProgram)I/O机访问数据文件(DB),利用FCP及相应的标准存取方法(DAM,ISAM,VSAM)I/O区及读/写数据。对于标准的数据文件是通过FCP来使用的,对于DL/IDB的访问是通过CICSTS转交给DL/I去执行。FCPCICS启动时自动翻开把握表FCT中的全部文件,关在CICSTS完毕时自动关闭,因此应用程序中无需翻开/关闭文件。存储治理(SCP)其功能由存储把握程序(StorageControlProgram)实现。CICSTS系统及应用程序所使用的虚存都是由SCP把握的,存储安排有静态和动态两种。静态安排是启动安排并保存到CICS完毕。动态安排是依据恳求来获得或释放的。这样,CICSTS分区就分为两个虚存区:静态区和动态1-7所示:静态存贮区:治理模块应用程序CSA动态存贮区:静态存贮区:治理模块应用程序CSA动态存贮区:TIOATCATWA应用程序Loadlib1-7CICS存储区域程序治理(PCP)其功能由存储把握程序(ProgramControlProgram)实现。PCP治理CICSTS系统中各应用程CICSTS(Loadlib)中,一旦启动事务时,由KCP在程序把握表PCT(ProgramControlTable)中查到该事务的入口事PCP在处理程序表PPT(ProcessingProgramTable)中查到该应用程序在CICSTS程序装载库中的位置后,恳求操作系统将程序装入CICS1-8所示。终端终端TCPKCPPCPLoadlibSCP1-8CICS程序治理临时存储治理(TSP)其功能由临时存储程序TSP(TemporaryStorageProgram)实现。TSP利用CICS分区中的存储区域或DASD中的VSAMTSP按应用恳求来获得或释放这些临时存储区,该存储区可用来存放中间结果、程序之间的数据传输等。临时存储区是属于动态存储区的。瞬时数据治理(TDP)其功能由瞬时数据把握程序TDP(TransientDataControlProgram)实现。瞬时数据治理负责保存两类瞬时数据:内分区瞬时数据和外分区瞬时数据。内分区瞬时数据库—由CICS据,全部内分区的瞬时数据作为一个VSAM或DAM文件存放在DASD盘上,这些瞬时数据在目的把握表DCT(DestinationControlTable)中作“目的地”条目来描述。外分区瞬时数据由CICSTS分区内一个事务产生,一般是给批处理使用的瞬时数据。每一个瞬时数据作为QSAM文件存放在DASDDCT中作为一个I/O文件定义。系统把握表CICSTS系统系统的运行需要一系列系统把握表(SystemControlTable),就如同WINDOWSCICSTS的系统环境。CICSCICS的地址空间里(AddressSpace)建立了这些表并保存到CICS些表存放在CICSFCT中定义的,所以,定义的文件可由全部应用程序和任务共享,终端把握表TCT则定义网络中的全部终端。有些表还可以联机修改。在CICSTS系统的整个工作过程中,这些表始终起着关键作用。所以,也可以这样说,CICSTS是一个面对把握表的系统。主要的系统把握表及其它们之间关系如图1-9所示。SITTCTPCTFCT PPT TST DCT应用程序1-9系统把握表的相互关系SIT(SystemInitializationTable)CICSTS系统环境。SIT供给了系统启动时的灵敏性。启动时利用不同SIT或启动过SITCICSTS系统环境,满足特定用户要求的目的。SIT大体包括三类信息:启动和把握系统功能的信息需要加载的CICS治理模块和把握表的名字后缀用来把握启动过程的说明信息SIT参数的使用可以参考《CICSSystemDefinitionGuide》手册。TCT(TerminalControlTable)定义CICS系统的终端环境,每一个终端及线路都必需在表中有一入口TCTTE,供给一些有关终端的参数。PCT(ProgramControlTable)定义CICSTS系统的事务环境,包括CICSTS用来标识和启动事务所需的把握信息。每一个事务在表中有一入口,供给:事务标识、处理该事务的程序名等信息。PPT(ProcessingProgramTable)CICSTSCICS分区中运行的程序在表中有一入口,供给:程序MAP名、程序语言、程序驻留否等信息。FCT(FileControlTable)定义CICSTS系统中的文件及数据库环境。每一外联机文件在表中有一入口,供给文件的有关信息,如文件名、存取方式和文件构造、记录格式、处理要求等。DCT(DestinationControlTable)定义CICSTS(DASD、带、打印机、打印终端等)在表中有一个入口,供给目的地名、设备类型等信息。TST(TemporaryStorageTable)定义CICSTS的临时存储数据环境。对每一个临时存储数据得指定一个标示(ID),以及安全、恢复等其他特性。CONTROLCONTROLTABLEPCTKCP把握PROGRAMPPTPCPSCP程序LIBRARY终端TCTTCPFCPFCT文件把握表把握程序CAFDB2TC:TERMINALCONTROL应用程序KC:TASKCONTROLPC:PROGRAMCONTROL SC:STORAGECONTROL1-10CICS把握表和把握程序CICSTSCICSTS些把握表。如:应用加载表ALT(ApplicationLoadTable)日志把握表JCT(JournalControlTable)程序列表PLT(ProgramListTable)注册表SNT(Sign—OnTable)系统恢复表SRT(SystemRecoveryTable)事务列表XLT(TransientListTable)终端列表TLT(TerminalListTable)核心加载表NLT(NucleusLoadTable)监视把握表MCT(MonitoringcontrolTable)系统把握块CICS(AddressSpace)CICS系统运行过程中的相关系统模块和应用程序的信息。这些把握块由治理模块创立用来跟踪、把握正在处理的各个事务。当系统不再需要这些控制块时,它们就被释放(TASK完毕,系统关闭)。主要的把握块有:CSA----CommonSystemArea 通用系统区TCA----TaskControlArea 任务把握区TWA----TransactionWorkArea 事务工作区TIOA----TerminalInput/OutputArea 终端输入输出区EIB----EXECInterfaceBlock 执行接口块在系统把握块中保存CICSTS把握程序和应用程序运行期间的假设干动态信息(系统性信息)。CSA每一个CICSTSTCTATIOA和EIB,。1CSACICS/A系统启动时在CICSTS分区的静态存储区建立CSACICSTSCSA是最重要的系统把握块,它包含一些指针,指出CICSTS全部的治理模块和系统把握表、局部把握块的位置。2TCA当启动一个事务时,由任务治理KCP建立。第一个任务一处TCA,当任务完毕时,由任务治理释放。它包括一些指针,指向与该任务有关的全部存储区。3TWA对每个任务,由任务治理KCP建立一个TWA,作为该任务的TCA的扩大。TWA可供给用程序累积数据和事务执行期间的中间结果。汉任务完成时,KCP将TWA连同TCA一道释放。4、终端输入/TIOATIOA及当应用程需向终端发送输出信息时,也是由终端治理建立一外TIOA来存放输出信息。5EIBEIBEIB中的场。EIB包含的信息有:事务标识、启动事务的日期和时间、显示设备的光标位置等。这些信息在应用程序执行期间以及利用格式化的转贮信息(DUMP)来调试程序时很有用。6、系统把握块与把握表的联系CICSTS通过上述系统把握表与把握块来对执行的任务实施把握。在招待过程中,CICSTS2.10说明白系统把握块CSA、TCA和TIOA与把握表TCT间的联系:14151-11系统把握块与TCT间关系CICSCICSCICS系统TDQTSQDUMP数据集,而那些系统把握表也在相应的系统数据集中存储,绝大局部的资源定义信息都存储在CICS的系统定义(CICSSystemDefinition)文件中。CICS域早期版本的CICS就是由以上治理模块、把握块和把握表所组成,治理模块之间相互直接访问,没有统一的接口,也没有特地的模块来负责在各个治理模块间进展协调。所以随着CICS应用规模的快速扩大,这种简洁的架构模式已经不能满足需求,CICS内部模块间相互冲突,治理混乱,整个应用随着规模的扩大性能急剧下降。因此在CICS/VSE版本之后,CICS在架构上做了较大调整。提出了CICS域(Domain)的概念。CICS域从本质上讲就是将原来的治理模块、把握块和把握表依据功能和供给的效劳进展了封装,各个治理模块不能直接相互访问效劳和数据,而必需通过各个域供给的统一的接口(DomainGate),并且特地设计了一个CICS域,内核域(Kernel,KE)来进展各个域之间的协调,(DomainManager),对各个域进展治理,每个一般域的初始启动运行到完毕都由域治理器来把握。这样大大削减各个治理模块消灭冲突、治理混乱和性能低下的可能。每个域有自己的一个或多个功能模块组成,每个域所使用的数据称为域参数记录(domainparameterrecord),这些数据存储在CICS的本地编目(Localcatalog)库中,这些编目文件是标准的KSDS格式的VSAM文件,每个CICS区域需要一个,并且不能和其他区域共享。现在可以这么讲,每个CICS区域被分为一组域(domain),每个域包含一组对象来完成一组特定的功能或效劳。域包含治理模块,把握表格和把握块。域之间通过域间接口进展通信。这些域监视和把握着系统全部事务的处理,主要包括:TransactionManager(XM)ProgramManager(PG)StorageManager(SM)Dispatcher(DS)Kernel(KE)Loader(LD)

事务治理器程序治理器存储治理器任务分派器内核域装载器TransactionManager(XM) 事务治理器,负责接收恳求,依据恳求创立、组织任务。ProgramManager(PG)StorageManager(SM)

程序治理器,负责定位、调用处理事务所需的应用程序存储治理器,负责安排处理事务所需的全部存储资源。CICS启动后在CICSregion里的存储空间由SMI/O等都需要动态存储。应其他CICS治理器的恳求,SM释放,猎取,把握和跟踪这些存储资源。TRANSID进入系统后,XM为恳求的事务创立一个TASK,XM首先在ProgramControlTable(PCT)TRANSID。XM然后调用StorageManager存储治理器(SM)来创立一个把握块TaskControlArea(TCA)来跟踪TASK的处理。每一个TASK都有一个单独的TCA与之关联,在事务处理过程中,task的状态不断变化:ReadytorunRunningWaitingTaskTCA被创立后,它就处于readytorun状态。同一时刻可以有多个TASKreadytorun状态,XM按它们的优先级来排序,task的优先级在处理的不同阶段是变化的,XM依据TASK的重要性,功能等来安排优先级。XMtaskTASKCICS的另外一个部件任务分派器(dispatcher)。CICScommonsystemarea(CSA)中设置一个指向当前分派的TASKTCA的指针。CICS系统只要没关闭,CSACSA中还有:CICS系统表〔Systemtable〕CICS治理模块其他把握块Task执行时,它就把握着CPU,当TASKCICS供给效劳时,它就会释放CPU把把握权交给CICS,然后等待效劳完成。这时就处于waiting状态。当前面的taskwaiting时,下一个task就可以运行了。这样就实现了多任务。task被分派执行时,把握权就交给了ProgramManager(PG)。PG定位并调用处理事务所需的第一个应用程序〔入口程序〕为了定位恳求的程序,PG在ProcessingProgramTable(PPT)中搜寻相关程序信息。前面已经提到,同一个程序不管有多少个用户调用它,CICScopy到主存里。假设目标程序已经装载到主存里,PG直接将把握权交给它,让它按要求运行。假设目标程序没被装载到主存里,PG在LOADLIB里面找到它,将它装载到主存中,再将把握权交给它,让它按要求运行。当程序完毕后,PG又猎取把握权然后再执行后面程序。REGIONCICSPlexCICS治理的一个存储区域被称为CICS区域(region)在有些系统中,CICS可以治理多个区域。这些区域除了系统或执行的数据功能不一样外,别的都一样。每个region专用于特定类型的事务或应用,但系统中各个region之间可以很便利的通信。假设CICS由多个region组成,那么这种体系构造就称之为CICSPlex。同一个CICSPlex里的不同region可能存在于:一样的MVSimage不同的MVSimages不同的操作系统(MVS,VSE,OS/390,zOS)不同的硬件平台(S/390,PC,AS/400)CICS的通信功能(VTAM,NetView)可以让单独的主机系统作为一个整体来运行用户可以进展远程访问。CICSCICSCICS体系构造满足不同的商业需求。集群技术可以将多个单独的z/OS系统用CICS通信连接成单个的计算资源。集群可以帮助避开当机,易于扩大〔容量几乎无限〕协同处理提高性能有用性可分别测试软件与产品软件,孤立不行靠的应用业务需求发生变化时系统很简洁按需扩展或重配置。1-12CICSPlex架构例如CICS的多任务与多线程机制到此为止我们根本知道什么是CICS了。CICS能够用来处理联机事务环境下成千上万用户的并发恳求。为了高效处理用户并发恳求,CICS使用了多任务和多线程技术。那么CICS的多任务和多线程机制是如何工作的呢?在CICS里,一个任务就是指特定用户CICS下运行一个程序,那么这个用户就得创立一个相应的任务。CICS的特性之一就是多任务Multitas。多任务意味着CICS个任务,这对于同时有成千上万用户同时操作的联机事务环境来讲是必需的。CICS的操作系统都有自己的多任务运行机制,但CICS的多任务并没有CICS的地址空间内部由CICS自己来实现多任务功能。因此不管你使用什么操作系统,CICS的多任务始终按它自有的方式运行。CICS1CICS1地址空间(Addressspace)1程序A2程序3程序C4程序D17操作系统(zOS,OS390,AIX,Windows)19图1-13CICS的多任务运行机制与多任务相反,CICS多线程技术允许全部同一个CICS地址空间的全部用户可以在同一时1-13A和用户D同时运行同一个订CICS到内存运行呢?一种方法,这二个用户就会分别从磁盘上的CICS程序转载库〔Loadlib〕中装载订单查询程序模块到内存中,这样内存中就有订单查询程序的两个拷贝了,很明显这种做法CICS的多线程运行机制了,在这种机制下这二个用户不用单独从磁盘装载程序拷贝到内存,而是先从磁盘装载一个程序的拷贝,然后这二个用户甚至包括以后运行这个程序的其他用户就可以共享内存中这个拷贝。这样做一方面可以大大节约内存,尤其是有很多用户并发执行一样的程序时侯,更是明显。在CICS环境下,随着并发访问用户数的增加,系统内存的开销增加并不会太大。另一方面,由于后来的用户直接共享从前用户装载到内存的程序,而不用自己从磁盘上进展装载,这样就大大削减了对磁盘这种慢速设备的访问。我们知道目前这种联机事务处理系统有一个比较大的瓶CICS的整体性能。这种对性能的改善一般用户能很直观的感觉到,比方,大家写好一个程序在CICS下第一次运行时,会明显的觉得一卡,但再运行其次次、第三次时就觉得格外流畅了,这其实就是CICS的多线程机制在起作用。那么CICS是怎样实现多线程机制的呢?为了实现多线程,CICS程序必需是可重入的。完全可重入的程序可以反复重执行,对程序本身,指令局部和数据存储局部不会做任何变动。也就是说程序从磁盘装载到内存后就不允许变动了,甚至包括程序里变量的值。这种程序是一种完全重入的程序。对于COBOL程序来讲就要求不准使用存储部的变量,这种不能使用变量的程序在实际应用中其实没有意义,也不好编写。因此,CICS就把内存中程序分成两局部,一局部是指令局部,指令局部由全部调用该程序的用户共享,另一局部则是数据存储局部,这一局部为每一个用户单独安排,相互独立,互不干扰。用户程序完毕后安排给他的数据存储空间会释放回收,但指令局部照旧保存在内存中,其他用户再运行该程序时就不需要到磁盘上去装载,而直接使用内存中的指令局部,然后安排的数据存储空间就可以了。空间,这样一方面大大削减了存储空间的占用,另一方面也削减了磁盘的I/O,从而可以提高性能。CICS任务执行流程进入(Entry)–一个事务ID(TRANSID)进入CICS.创立任务(Taskcreation)–CICStask来处理事务,任务现在已经预备运行了(预备态,ready)分派(Dispatch)–CICS接下来确定处于预备态的task执行(Execution)–Task调用相应的事务程序并运行。处理(Processing)–当被调用的程序调用CICS的效劳时,task释放CPU并等待效劳完成。重分派(Redispatch)–恳求的效劳完成后,task又处于预备态了,CICS又来进展分派。返回(Return)–当事务的全部工作完成后,事务程序发出一个RETURN命令将把握权交给CICS终止(Termination)–CICS终止TASK并回收相关资源1-14所示。1-14CICS任务执行流程CICS的特性IBMCICS(CustomerInformationControlSystem)TransactionServerforz/OSV3.1,供给强化的Web效劳解决方案。同时公布的还有CICSTransactionGatewayV6,供给基于J2EE允许客户从现有IT投资中获得更高的价值,同时通过SOA(面对效劳的架构)应对和改善灵敏性和响应力气。传统的工作流程现在可以通过CICSTransactionServerV3参与到SOA(面对效劳的架构)之CICSCICSTransactionServer让企业能够转变现有应用使其重焕发活力,降低本钱和风险,缩短满足随需应变业务要求的应用的上市时间。1.15CICSTransactionServer3.1WEBService的支持CICSTransactionServer3.1连续了IBM在大型机根底设施上的投资并与版Websphere、DB2IMSWebSOA。此基于标准的支持让企业更快速高效地与

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论