1 / 183

One Two Three Four Five ...

6. One Two Three Four Five . C I C S. INTRODUÇÃO AO CICS. 6. C I C S. Sumário. Slide Assunto 004................Introduction to CICS 016................Transaction Flow 040................Programming 062................Queueing

egil
Download Presentation

One Two Three Four Five ...

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 6 One Two Three Four Five ... C I C S INTRODUÇÃO AO CICS Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  2. 6 C I C S Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  3. Sumário Slide Assunto 004................Introduction to CICS 016................Transaction Flow 040................Programming 062................Queueing 081................Command Level tools 089................Terminal Management 099................File Management 119................Data Integrity and Recovery 137................System Management 152................Communication Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  4. Unidade 1 Introduction to CICS Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  5. CICS C.I.C.SCustomer Information Control System • Foi desenvolvido em 1968. • Tornou-se programa produto IBM em 1969 • Completa 30 anos consolidando sua posição no mercado devido a sua constante evolução. • Controlar a execução de aplicativos em tempo real. • Suprir a necessidade de acesso rápido à bases de dados. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  6. CICS Transação • Solicitação de um usuário para a realização de um serviço. • Saques em caixas eletrônicos • Compra de passagem • Reserva de hotel • Serviço médico Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  7. CICS Processamento da Transação(Saque de dinheiro) • Caixas eletrônicos espalhados • Muitas pessoas solicitando saques ao mesmo tempo • Controlar a execução coordenada de todas essas solicitações de modo que todos os usuários sejam atendidos com eficiência. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  8. High Availability Fast and Consistent Response Time End-to-End Integrity Repetitive Low Cost / Transaction Nosso gerenciador precisa ter grande disponibilidade, funcionando 24 h por dia. Deve ser rápido e consistente, garantindo integridade. Por ter um grande volume deve ter um baixo custo por transação. CICS Transaction Manager Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  9. CICS OLTPOnLine Transaction Processing • O usuário solicita a execução do serviço e aguarda seu processamento, recebendo a confirmação do sucesso ou não da operação. • Potencialmente muitos usuários, muitas transações • Diversas localidades, mesmo tipo de transação • Mesma base de dados • Compartilhamento e Integridade dos dados Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  10. CICS A função essencial da aplicação é efetuar o serviço solicitado pelo usuário.A parte de gerenciamento dos dados, segurança de acesso, integridade, recuperação de falhas, .....? Quem deve fazer? Connectivity Security BusinessLogic Logging Multithreading Exception Handling APLICATION QueueManagement Locking Recovery Time Control Communication Performance Scheduling Administration OPERATING SYSTEM HARDWARE Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  11. CICS APLICATIONS (Business Logic) Security Exception Handling Naming Performance Locking Connectivity Logging Multithreading Scheduling Time Control Recovery Authorization End-to-End Integrity Administration C I C S Aplicaion Server COMUNICATIONS DB MANAGER OPERATING SYSTEM HARDWARE Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  12. CICS A família CICS 1/4 • Hoje a IBM já dispõe de CICS para todas as suas plataformas: • ES/9000 - MVS CICS/ESA, CICS/MVS • ES/9000 - VSE CICS/VSE • RISC/6000 - AIX CICS/6000 • AS/400 - OS/400 CICS/400 • PWS - OS/2 CICS for OS/2 Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  13. CICS A família CICS 2/4 • CICS para Open System (ex. HP-Unix) • Todos podem conversar entre si • Uma aplicação desenhada para uma plataforma funciona em outra (mesma API) • CICS Clients: Disponibilizam o acesso à sistemas servidores (CICS Servers). • DOS • Microsoft WINDOWS • OS/2 • MACINTOSH Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  14. 3/4 CICS APLICATIONS TRANSACTION MANAGER C I C S Aplicaion Server OPERATING SYSTEM MVS/ESA VSE OS/400 AIX OS/2 HARDWARE ES/9000 AS/400 RISC/6000 PWS Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  15. CICS A família CICS 4/4 • Dos 500 da Fortune (Publicação que engloba as maiores empresas do mundo), 90 % deles utilizam CICS. • 50.000 licenças de CICS no mundo. • 300.000 programadores CICS no mundo. • Utilizado em mais de 90 países, e geralmente de forma vital para as empresas. • Software Houses oferecem inúmeros pacotes para todas as plataformas. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  16. CICS Unidade 2 Transaction Flow Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  17. CICS Conceito: Transação x Task 1/2 • Transação: • Solicitação para realização de um serviço • Ex. Verificação de estoque a partir de um terminal • 1 a 4 caracteres • Que deve ser incluído numa tabela do CICS, chamada PPT (Program Control Table). • Tipicamente entrada pelo terminal Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  18. CICS Conceito: Transação x Task 2/2 • Task: • Unidade de trabalho do CICS • É comum chamarmos de Task a execução de uma transação. • Um ou mais programas • Na execução de uma única task pode ocorrer o processamento de mais de um programa da aplicação. • Task Id • Cada task tem uma identificação própria que é um número sequencial ascendente conhecido como TASKID. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  19. CICS Layout da Memória do CICS 1/3(Ambiente MVS) • MVS - unidades chamadas Address Space • Addres Space do CICS • Uma parte ocupada pelo núcleo do CICS (módulos de gerenciamento e tabelas) • Outra parte é chamada DSA (Dynamic Storage Área). Nessa área são carregados os programas da aplicação, as áreas de trabalho e os blocos de controle utilizados pela task. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  20. CICS Layout da Memória do CICS 2/3(Ambiente MVS) • Núcleo do CICS • Entre os módulos de controle podemos citar alguns bastante importantes: • Módulos que gerenciam o mecanismo de DISPATCHER do CICS e que gerenciam a execução concorrente de tasks. • DFHPCP - Program Control Program, controla a carga e a execução dos programas de aplicação. • DFHSCP - Storage Control Program, controla a alocação de memória. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  21. CICS Layout da Memória do CICS 3/3(Ambiente MVS) • Na DSA temos um bloco de controle chamado TCA (Task Control Área): • Criada no momento em que a transação é iniciada e eliminada ao término de sua execução. • Contém informações importantes, usadas pelo CICS para controlar a execução da task. • A partir do CICS 3.1 (DSA e EDSA). • Hoje (CICS 4.1) tem 8 DSAs diferentes, onde o CICS isola o processamento de funções distintas, aumentando sua integridade e estabilidade. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  22. CICS NUCLEUS TCP TDP Vtam SCP EIP DCT TCT DISPAT. TSP CSA FCP BMS PCP TRP FCT ICP PCT PPT T C A TIOA FIOA USER STORAGE TD STORAGE TS STORAGE APLICATION PROGRAM DSA Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  23. CICS Execução concorrente • Dois usuários executando a mesma transação. • Duas Tasks, cada uma com a sua taskid. • São criadas duas TCAs, uma para cada task. • As instruções do programa (Procedure) serão compartilhadas e a work-storage terá uma cópia para cada task. • Este conceito de programação é chamado semi-reentrante. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  24. CICS NUCLEUS TCP TDP Vtam SCP EIP DCT TCT DISPAT. TSP CSA FCP BMS PCP TRP FCT ICP PCT PPT WORKING STORAGE T C A TRN1 APLICATION PROGRAM WORKING STORAGE T C A TRN1 DSA Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  25. CICS Task Flow • Cada módulo ou grupo de módulos executa funções específicas. • Cada função solicitada ao CICS faz com que a task precise aguardar (wait), enquanto isso o CICS executa outras tasks. • A seguir veremos, de forma bastante simplificada, o fluxo de uma task desde que o usuário digitou o seu pedido até receber a resposta na tela, lendo um arquivo: Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  26. Terminal Control Task Control Program Control User Program Storage Control File Control Init Task Validate Req.Stor. Get Stor Sch. task Disp.task LoadPgm Req.Rec Wait Req.Read Req Área Get Stor Rec Read Wait PrepOut SchWrite Req.Send Term.task TermTran Return Write FreeStor Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  27. CICS Administação de Recursos 1/4 • O CICS administra seus recursos e de seus usuários através de suas tabelas de recursos. • DFHSIT - (System Initialization Table) • Parâmetros para controlar a inicialização e a execução do CICS. • DFHTCT - (Terminal Control Table) • Onde deve estar cada definição de terminal da rede que o CICS reconhecerá. Nessas definições informamos, nome, características e método de acesso. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  28. CICS Administação de Recursos 2/4 • DFHPCT - (Program Control Table) • Onde definimos cada transação, o nome do programa que a transação executa, a prioridade, ... • DFHPPT - (Processing Program Table) • Onde definimos cada programa e suas características tais como a linguagem na qual foi desenvolvido, opções de residência na memória, ... Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  29. CICS Administação de Recursos 3/4 • DFHFCT - (File Control Table) • Onde definimos os arquivos que o CICS reconhecerá bem como suas características, quais operações serão permitidas, ... • DFHDCT - (Destinationn Control Table) • Onde definimos as filas de Transient Data. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  30. CICS Administação de Recursos 4/4 • DFHTST - (Temporary Storage Table) • Onde opcionalmente definimos as filas de TS. • DFHPLT - (Program List Table) • Onde definimos os programas que serão executados automaticamente durante a inicialização e o término do CICS. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  31. CICS S I T DFHSIT TYPE=CSECT, AIEXIT=DFHZATDC, AUTOINSTALL USER PROG.NAME (.CEL) APPLID=CEL3CIC9, VTAM APPL IDENTIFIER DATFORM=DDMMYY, *(MMDDYY) CSA DATE FORMAT DSALIM=7M, *(5M)UPPER LIMIT OF DSA BELOW 16MB EDSALIM=90M, *(20M) UPPER LIMIT DSA ABOVE 16MB GMTRAN=CSGM, INITIAL TRANSACTION GRPLIST=DFHLIST, LIST NAME OF CSD GROUPS FOR STARTUP MXT=60, *(5) MAXIMUM NUMBER OF TASKS IN CICS* SUFFIX=A4, SUFFIX OF THIS SIT TCT=A4, TERMINAL CONTROL TABLE OPTION/SUF END DFHSITBA Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  32. CICS Macro x RDO • As tabelas de recursos são carregadas na memória na inicialização do CICS e passam a valer durante toda a rodada. • Temos duas formas para criarmos as tabelas: • Macros Assembler • RDO (Resource Definition Online) Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  33. CICS Macros Assembler • Criamos um fonte com as macros de definição de recursos, compilamos a tabela, em seguida a linkeditamos e após reciclar o CICS a tabela é validada em memória, essa forma de definição de recursos está sendo gradativamente substituída, já que para cada novo recurso ser validado precisa reciclar o CICS, prejudicando sua disponibilidade. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  34. CICS RDO - Resource Definition Online • Este método consiste em definir e validar os recursos em memória dinamicamente, sem ter que reciclar o CICS. Esse mecanismo surgiu com o CICS v1.6 em 1983 e evoluiu bastante até hoje. • Esse processo e feito através da transação CEDA, que possui help e trabalha de forma interativa. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  35. CICS Transação CEDA • Um novo recurso é definido com a função DEFINE. • Este recurso será armazenado num arquivo Vsam KSDS, chamado DFHCSD (Cics System Definition Dataset). • Após isso, utilizando-se da função INSTALL, essa definição é instalada na memória do CICS e o recurso já está disponível para ser utilizado. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  36. CICS Grupo de Recursos • Todo recurso definido deve fazer parte de um grupo. O nome do grupo é indicado na própria tela onde se define o recurso. • Os grupos podem ser organizados em LISTAS também. • É uma forma de organizarmos os recursos que precisamos administrar. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  37. CICS O que podemos definir com RDO? • Quando foi criado no CICS v1.6 1983, foi possibilitada a definição de Transações, Programas e mapsets (telas). • Em 1986, com a vinda da versão 1.7 tivemos implementada a facilidade de definir terminais VTAM. • Finalmente em 1989, com o advento do CICS v3.1.1 chegou a possibilidade de definição de arquivos Vsam. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  38. CICS O que devemos definir com Macro? • Todas as outras tabelas (DCT, PLT,...) • TCT para terminais não Vtam 000400 PRINT NOGEN 000500 DFHTCT TYPE=INITIAL,ACCMETH=(VTAM,NONVTAM),SUFFIX=A4 000700 * DEFINICAO PARA TERMINAIS SEQUENCIAIS * 001600 * * * * * * * DEFINICAO P/ TERMINAL SEQUENCIAL 1 ************* 001700 DFHTCT TYPE=SDSCI,DEVICE=3505,DSCNAME=ENTSEQ01,BLKSIZE=80, * 001800 RECFM=F 001900 DFHTCT TYPE=SDSCI,DEVICE=3211,DSCNAME=SAISEQ01 002000 DFHTCT TYPE=LINE,INAREAL=132,ISADSCN=ENTSEQ01,ACCMETH=BSAM, * 002100 OSADSCN=SAISEQ01,TRMTYPE=CRLP 002200 DFHTCT TYPE=TERMINAL,TRMIDNT=S001,TCTUAL=80, * 002300 TRMSTAT=(RECEIVE),NETNAME=S001 006300 DFHTCT TYPE=FINAL 006400 END DFHTCTBA Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  39. CICS I N T E R V A L O Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  40. CICS Unidade 3 Programming Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  41. CICS Command Level Interface 1/2 • Chamamos de Command Level Interface a forma de programar sob o CICS, é a API do CICS. • O Command Level surgiu em 1977, com o CICS v1.3. Antes dessa data era necessário utilizar macros assembler para programar sob CICS, procedimento bastante trabalhoso se comparado com o atual. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  42. CICS Command Level Interface 2/2 • Na execução desses comandos uma interface (EIP) faz a edição das solicitações, passando o controle para os módulos responsáveis pela execução das mesmas. • Para todo comando a interface devolve um retorno indicando se a função foi ou não bem sucedida, e em caso negativo, qual o tipo de problema que ocorreu. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  43. CICS CICS Services • Através do Command Level, programas acessam os mais diversos serviços que o CICS oferece: • Terminal • Envio e recepção de dados (SEND), (RECEIVE) • Arquivo • Leitura/gravação de registros (READ), (WRITE) • Programa • Passagem de controle entre programas (LINK), ( XCTL) • Task • Alteração de prioridade • Queueing • Gravação de dados em filas TS e TD (WRITEQ) • Outros - ........ Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  44. CICS Comando CICS - formato EXECCICSSENDFROM(AREA) LENGTH(6) END-EXEC keywords option option delimiter function argument argument • O CICS suporta as linguagens: COBOL, ASSEMBLER, PL/I. • A partir da v3.1.1 podemos também programar em C. • Obs: END-EXEC só para Cobol. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  45. CICS Exemplo EXEC CICS RECEIVE INTO(W-IN) END-EXEC MOVE NUMERO TO RECKEY MOVE ... EXEC CICS READ FILE(‘FILEA’) INTO(W-REC) RIDFLD(RECKEY) END-EXEC EXEC CICS SEND FROM(W-OUT) END-EXEC EXEC CICS RETURN END-EXEC Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  46. CICS Montagem de um programa • Submeter o fonte do programa ao Translator do CICS, que analisa o código. • Cada comando EXEC CICS será convertido para instruções e tornado comentário. • Além da tradução, o Translator incluirá algumas áreas de trabalho, que o CICS utilizará durante a execução do programa. • Um Translator para cada linguagem. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  47. CICS Montagem de um programa FONTE REL. CICS TRANSLATOR COMPILADOR REL. LOAD MODULE LINK EDIT Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  48. CICS Condições de exceção EXEC CICS HANDLE CONDITION COND1 (LABEL1) Coloca-se antes de emitir o comando e se quando o CICS executar o comando acontecer a COND1 acontecerá um desvio para LABEL1. EXEC CICS READ (‘FILEA’) RESP(RCQVEIO) IF RCQVEIO = DFHRESP(COND) THEN..... Aqui o programador controla os acontecimentos através dos return codes após cada comando executado. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  49. CICS Funções de controle de programasLINK /XCTL/ LOAD • Quando inicia-se uma transação, o programa por ela indicado é carregado em memória e começa a ser executado. • Nada impede que a task execute outros programas antes de seu término e para controlar a carga e a passagem de controle de um program para outro utilizamos essas funções. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

  50. CICS LINK • O comando LINK (exec cics link) transfere o controle para o programa especificado, que executa sob a mesma task, e quando este termina o controle volta para o programa que emitiu o Link, na próxima instrução após o Exec Cics Link. • Podemos, opcionalmente, passar uma área de dados de um programa para outro. Celepar-GSO-Disop CICS-Introdução colodi@pr.gov.br

More Related