Você está na página 1de 183

One Two Three Four Five ...

INTRODUÇÃO AO CICS

CICS
08/04/2018 Celepar-GSO-Disop CICS-Introdução 1
colodi@pr.gov.br
CICS
08/04/2018 Celepar-GSO-Disop CICS-Introdução 2
colodi@pr.gov.br
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
08/04/2018 Celepar-GSO-Disop CICS-Introdução 3
colodi@pr.gov.br
Introduction to CICS
08/04/2018 Celepar-GSO-Disop CICS-Introdução 4
colodi@pr.gov.br
CICS

C.I.C.S
Customer 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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 5
colodi@pr.gov.br
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 6


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 7


colodi@pr.gov.br
CICS

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

OLTP
OnLine 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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 9


colodi@pr.gov.br
CICS

Connectivity Security
Business Logic Logging
Multithreading Exception Handling
Queue Management APLICATION
Locking
Recovery Time Control Communication
Scheduling Performance Administration

OPERATING SYSTEM

HARDWARE

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?

08/04/2018 Celepar-GSO-Disop CICS-Introdução 10


colodi@pr.gov.br
CICS
APLICATIONS
(Business Logic)

Security Exception Handling


Naming Performance
Locking
Logging CICS Connectivity
Multithreading
Scheduling Time Control
Recovery Aplicaion Server Authorization
End-to-End Integrity Administration

COMUNICATIONS DB MANAGER
OPERATING SYSTEM
HARDWARE

08/04/2018 Celepar-GSO-Disop CICS-Introdução 11


colodi@pr.gov.br
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 12


colodi@pr.gov.br
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
08/04/2018 Celepar-GSO-Disop CICS-Introdução 13
colodi@pr.gov.br
CICS 3/4

APLICATIONS

TRANSACTION MANAGER

CICS
Aplicaion Server

OPERATING SYSTEM

MVS/ESA VSE OS/400 AIX OS/2

HARDWARE

ES/9000 AS/400 RISC/6000 PWS

08/04/2018 Celepar-GSO-Disop CICS-Introdução 14


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 15
colodi@pr.gov.br
CICS

Transaction Flow
08/04/2018 Celepar-GSO-Disop CICS-Introdução 16
colodi@pr.gov.br
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 17


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 18


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 19


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 20
colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 21
colodi@pr.gov.br
CICS

TCP TDP
SCP EIP
TCT DCT
CSA DISPAT. TSP

BMS FCP
PCP TRP
FCT
ICP PCT PPT

TCA TIOA FIOA


APLICATION USER TD TS
PROGRAM STORAGE STORAGE STORAGE

08/04/2018 Celepar-GSO-Disop CICS-Introdução 22


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 23
colodi@pr.gov.br
CICS

TCP TDP
SCP EIP
TCT DCT
CSA DISPAT. TSP

BMS FCP
PCP TRP
FCT
ICP PCT PPT

WORKING
TCA STORAGE
APLICATION
PROGRAM WORKING
TCA STORAGE

08/04/2018 Celepar-GSO-Disop CICS-Introdução 24


colodi@pr.gov.br
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:
08/04/2018 Celepar-GSO-Disop CICS-Introdução 25
colodi@pr.gov.br
Terminal Task Program User Storage File
Control Control Control Program Control 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
08/04/2018 Celepar-GSO-Disop CICS-Introdução 26
colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 27
colodi@pr.gov.br
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, ...

08/04/2018 Celepar-GSO-Disop CICS-Introdução 28


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 29


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 30


colodi@pr.gov.br
CICS

SIT
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 31


colodi@pr.gov.br
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)

08/04/2018 Celepar-GSO-Disop CICS-Introdução 32


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 33


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 34


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 35
colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 36


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 37
colodi@pr.gov.br
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 38


colodi@pr.gov.br
CICS

I NTE RVALO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 39


colodi@pr.gov.br
CICS

Programming
08/04/2018 Celepar-GSO-Disop CICS-Introdução 40
colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 41
colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 42
colodi@pr.gov.br
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 - ........
08/04/2018 Celepar-GSO-Disop CICS-Introdução 43
colodi@pr.gov.br
CICS

Comando CICS - formato


EXEC CICS SEND FROM(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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 44


colodi@pr.gov.br
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

08/04/2018 Celepar-GSO-Disop CICS-Introdução 45


colodi@pr.gov.br
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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 46
colodi@pr.gov.br
CICS

Montagem de um programa
FONTE
CICS
TRANSLATOR
REL.

COMPILADOR
REL.
LOAD LINK EDIT
MODULE

08/04/2018 Celepar-GSO-Disop CICS-Introdução 47


colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 48


colodi@pr.gov.br
CICS

Funções de controle de programas


LINK / 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.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 49
colodi@pr.gov.br
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.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 50


colodi@pr.gov.br
CICS

PROG1
MOVE ...
MOVE ...
LINK PROG2
MOVE ...
RETURN
PROG2
MOVE ...
MOVE ...
MOVE ...
RETURN

08/04/2018 Celepar-GSO-Disop CICS-Introdução 51


colodi@pr.gov.br
CICS

XCTL
• O comando XCTL (exec cics xctl) transfere
o controle para o programa especificado,
que executa sob a mesma task, e quando
este termina o controle NÃO é devolvido ao
programa que emitiu o comando XCTL e
sim ao nível imediatamente superior.
• Podemos, opcionalmente, passar uma área
de dados de um programa para outro.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 52


colodi@pr.gov.br
CICS

PROG1
MOVE ...
MOVE ...
XCTL PROG2
MOVE ...
RETURN

PROG2
MOVE ...
MOVE ...
RETURN
MOVE ...
RETURN

08/04/2018 Celepar-GSO-Disop CICS-Introdução 53


colodi@pr.gov.br
CICS

Níveis de programas
• Podemos ter a execução de vários programas sob a
mesma task. Nesse caso a task executará sob
diferentes níveis lógicos de programas.
• O comando LINK faz descer um nível lógico,
enquanto que o XCTL mantém a task no mesmo nível
em que se encontra.
• O comando XCTL nunca volta para o programa que
fez a chamada.
• Em qualquer caso, ao término de cada programa o
controle sobe um nível. Quando o programa que
estiver no nível 1 terminar, a task será encerrada.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 54


colodi@pr.gov.br
CICS

Níveis de
Programas
LINK PROGRAM(‘PROG2)
RETURN

XCTL PROGRAM(‘PROG3) LINK PROGRAM(‘PROG4)


RETURN RETURN

....
RETURN

08/04/2018 Celepar-GSO-Disop CICS-Introdução 55


colodi@pr.gov.br
CICS
LOAD
PROG1
TBL1
MOVE ...
SP=25.00
MOVE ...
PR=16.00
LOAD PROGRAM(TBL1). . .
RJ=14.00
MOVE ...
BA=31,80
RETURN

•O comando LOAD (exec cics load) é utilizado


para solicitar ao CICS, a carga de um programa,
tabela ou mapset na memória.
•Muito usado para trabalhar com tabelas codificadas
em assembler, carregadas e usadas por muitas transações.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 56
colodi@pr.gov.br
CICS

START - Task Control


EXE CICS START TRANSID(‘TRN1’)
TERMID(‘TER1’)
[ FROM(W-AREA) ]
[ TIME(143000) ]
END-EXEC
•Iniciar automaticamente uma transação, imediatamente
ou num horário determinado, passando dados ou não.
•Esse mecanismo de start é chamado de ATI
(Automatic Transaction Initiation).
08/04/2018 Celepar-GSO-Disop CICS-Introdução 57
colodi@pr.gov.br
CICS

BMS
Basic Mapping Support 1/4
• O BMS permite a criação de telas
elaboradas de maneira simples.
• A essas telas, chamamos Mapas.
• Tem independência do tipo de terminal
(tamanho de tela, protocolo, outras), tratada
pelo BMS, sem alterar a aplicação.
• Um mapa é composto por duas entidades: o
mapa físico e o mapa simbólico.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 58
colodi@pr.gov.br
CICS

BMS
Basic Mapping Support 2 /4
• Os mapas são definidos através de macros
Assembler: DFHMSD (Mapset), DFHMDI
(Mapa), DFHMDF (Campos).
• O mapa físico contem caracteres de controle
para o terminal. Esse mapa é compilado,
linkeditado e seu nome deve estar definido
na Tabela de programas do CICS (PPT).
• O mapa lógico é a estrutura que o programa
manuseia, recebendo e enviando dados para
o terminal.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 59
colodi@pr.gov.br
CICS

BMS
Basic Mapping Support 3/4
• Podemos definir vários mapas lógicos sob
um mapa físico.
• Os comandos SEND MAP e RECEIVE
MAP, referenciam o mapa lógico e o físico.
• O programador pode criar efeitos de janelas,
construindo vários mapas menores para a
mesma tela.
• O BMS possibilita também a acumulação e
paginação de mapas, através de comandos
especiais ou pf’s.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 60
colodi@pr.gov.br
CICS

BMS
Basic Mapping Support 4/4
• O BMS permite também direcionar
mensagens e mapas para determinados
terminais ou usuários (Message Routing).
• O CICS, através da transação CMSG, que
se utiliza do BMS, provê uma forma
bastante simples de envio de mensagens
para outros terminais. Basta informar os
terminais de destino e o texto da mensagem
e opcionalmente podemos escolher que seja
em um horário determinado.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 61
colodi@pr.gov.br
CICS

Queueing
08/04/2018 Celepar-GSO-Disop CICS-Introdução 62
colodi@pr.gov.br
CICS

• O cics fornece uma facilidade para armazenar dados


que possuem características transientes ou
temporárias, conhecida como QUEUEING ou
FILAS.
• Esses dados podem ser criados por uma transação
para uso próprio imediato ou posterior, ou ainda para
utilização por outras transações.
• Existem dois tipos de filas:
– Transient Data (TD)
– Temporary Storage (TS)
08/04/2018 Celepar-GSO-Disop CICS-Introdução 63
colodi@pr.gov.br
CICS

TRANSIENT DATA ( TD ) 1/9

• Filas de TD são identificadas por nomes de


4 caracteres que devem ser definidos numa
das tabelas do CICS, chamada DCT
(Destination Control Table). Essa tabela é
definida utilizando-se macros assembler,
devendo ser compilada e linkeditada.
• Filas TD tem como características a
gravação e leitura de dados exclusivamente
sequencial, e são divididas em dois grupos:
– TDs INTRAPARTITION
– TDs EXTRAPARTITION
08/04/2018 Celepar-GSO-Disop CICS-Introdução 64
colodi@pr.gov.br
CICS
2/9

DFHTDP

TASK
DCT Exec Cics
Readq/Writeq TD
INTRA-
EXTRA-
PARTITION
Batch Programs PARTITION

A task grava ou lê TDs através de Writeq TD e Readq TD.


O módulo DFHTDP consulta a definição da fila na DCT para
saber se é Intra (controlada pelo CICS) ou Extra
(arquivo externo).
08/04/2018 Celepar-GSO-Disop CICS-Introdução 65
colodi@pr.gov.br
CICS

TD INTRAPARTITION 3/9

• São utilizados exclusivamente dentro do CICS.


• Todas as filas são armazenadas no mesmo
arquivo controlado pelo CICS: Vsam Esds
chamado DFHINTRA.
• Os registros de cada fila podem ter tamanho
fixo ou variável.
• A gravação e recuperação dos dados é sempre
sequencial.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 66
colodi@pr.gov.br
CICS

TD INTRAPARTITION 4/9

• Após a leitura dos registros a fila fica vazia, pronta


para uma nova gravação de dados.
• Em TDs Intrapartition a leitura é destrutiva, as filas
tem característica reutilizável.
• As TDs Intra tem um mecanismo bastante útil,
chamado Triggering. Ao definir a fila na DCT
podemos informar um número de Trigger level, que
quando atingido, numa gravação, uma transação é
automaticamente iniciada através do ATI (Automatic
Transaction Initiation) do CICS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 67
colodi@pr.gov.br
CICS

Program 5/9

Exec Cics
Readq/Writeq TD
DFHTDP
Intrapartition
Dataset

DCT Destid PUT GET

08/04/2018 Celepar-GSO-Disop CICS-Introdução 68


colodi@pr.gov.br
CICS

TD EXTRAPARTITION 6/9

• É a forma que o CICS utiliza para suporte de


arquivos sequenciais. (SAM - Sequential
Access Method).
• Cada fila de TD Extrapartition é amarrada a um
arquivo seqüencial físico.
• Cada TD Extra pode ser definica na DCT como
Input ou Output, nunca ambos.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 69


colodi@pr.gov.br
CICS

TD EXTRAPARTITION 7/9

• O arquivo SAM pode ser gerado pelo CICS e


utilizado por programas Batch e vice-versa.
• Os registros dos arquivos podem ser de
tamanho fixo ou variável, blocados ou não.
• Como cada fila de TD Extra corresponde a um
arquivo, este deve ser aberto para poder ser
utilizado. Podemos solicitar a abertura no
startup do CICS ou na primeira referência.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 70


colodi@pr.gov.br
CICS

TD EXTRAPARTITION 8/9

• O usos mais comuns das TD’s são:


– Armazenamento e recuperação de dados pelas
transações
– Disparo automático de tasks via mecanismo de
gatilho.
• O próprio CICS é um grande usuário de TD,
principalmente para gravação de mensagens
reportando tudo o que ocorre com o sistema durante a
rodada (Sign-on/Sign-off, Error/Abends, Statistics).

08/04/2018 Celepar-GSO-Disop CICS-Introdução 71


colodi@pr.gov.br
CICS

Program 9/9

Exec Cics Batch


Readq/Writeq TD
DFHTDP

DCT Destid Dataset Name

Input ou Output
08/04/2018 Celepar-GSO-Disop CICS-Introdução 72
colodi@pr.gov.br
CICS

TEMPORARY STORAGE (TS) 1/7


• Filas de TS tem seus nomes com até 8
caracteres.
• A criação desses nomes é dinâmica, não
precisa definí-los em tabela.
• Os dados podem ser recuperados sequencial
ou diretamente.
• Os registros, chamados de ÍTENS, podem
ter tamanho fixo ou variável.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 73
colodi@pr.gov.br
CICS

TEMPORARY STORAGE (TS) 2/7

• As filas ficam disponíveis até serem


explicitamente excluídas.
• Existem dois tipos de filas:
– MAIN - filas gravadas em memória.
– AUX - filas gravadas em disco.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 74


colodi@pr.gov.br
CICS

TEMPORARY STORAGE (TS) 3/7


• A task solicita a gravação / leitura de filas TS
através do comando WRITEQ / READQ.
• No próprio comando especificamos se
desejamos que a fila seja criada em memória
(MAIN) ou em disco (AUX).
• Os registros de TS são chamados de ÍTENS.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 75


colodi@pr.gov.br
CICS

TEMPORARY STORAGE (TS) 4/7


• As filas em memória tem a vantagem da
rapidez, porém se forem muito extensas
podem causar problemas de falta de memória.
• As filas de disco tem como destino um arquivo
Vsam Esds chamado DFHTEMP e são bastante
úteis quando se pretende manter as filas em
caso de queda no CICS. Também são muito
recomendadas para filas com muitos ítens.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 76


colodi@pr.gov.br
CICS

5/7

DFHTSP

TASK
Exec Cics TS Records
Readq / AUX.TS
TS Records
Writeq TS Dataset
TS Records
Main / Aux
MAIN

08/04/2018 Celepar-GSO-Disop CICS-Introdução 77


colodi@pr.gov.br
CICS

Utilização de TS 6/7

• Além das nossas aplicações, o próprio CICS


utiliza TS para várias funções, entre elas:
– Armazenar telas de BMS (paginação).
– Guardar telas do EDF (monitoração de
transações)
– Passar dados para uma transação iniciada via
comando START.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 78


colodi@pr.gov.br
CICS

Para uma boa utilização de TS... 7/7


• Sempre excluir as filas após a utilização
(DeleteQ), para não ter problemas com
memória ou falta de espaço no arquivo
DFHTEMP.
• Padronizar o uso dos nomes das filas.
Exemplo: Endereço do terminal nas 4
primeiras posições e nome da transação nas
quatro últimas.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 79
colodi@pr.gov.br
TRANSIENT DATA TEMPORARY STORAGE
STATIC DEFINITIONS (DCT) DYNAMIC DEFINITIONS

VSAM-ESDS FILE (INTRA) VSAM-ESDS FILE (AUX)

SEQUENTIAL RETRIEVE SEQ/RANDOM RETRIEVE

SAM FILES (EXTRA) MAIN STORAGE USE

TRIGGERING (ATI) NO ATI SUPPRT

08/04/2018 Celepar-GSO-Disop CICS-Introdução 80


colodi@pr.gov.br
CICS

Command Level Tools


08/04/2018 Celepar-GSO-Disop CICS-Introdução 81
colodi@pr.gov.br
CICS
FERRAMENTAS
CEBR AUXILIARES

CEDF

CECS
CECI

08/04/2018 Celepar-GSO-Disop CICS-Introdução 82


colodi@pr.gov.br
CICS

CEDF
Execution Diagnostic Facility 1/2

• É uma transação utilizada para depurar


probramas escritos em Command Level.
• A cada comando CICS emitido o programa
é suspenso, e através do CEDF podemos
verificar sua Working-Storage, inclusive
podendo alterá-la.
• O CEDF mostra a execução de cada
comando e permite a alteração de response
codes para teste da aplicação.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 83
colodi@pr.gov.br
CICS

CEDF
Execution Diagnostic Facility 2/2

• Podemos acompanhar a execução do


programa a partir de determinado comando,
que solicitamos através de um painel (Stop
Conditions) do CEDF.
• O CEDF permite também acompanhar a
execução de um programa através de outro
terminal.
• Por suas qualidades esta transação é
considerada a mais valiosa para quem
programa em CICS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 84
colodi@pr.gov.br
CICS

CEBR
Browses CICS queues

• Essa transação possibilita consultarmos


todo o conteúdo de qualquer fila de TS
(main / aux) e TD.

• Permite também localizarmos uma cadeia


de dados dentro de uma fila de TS ou TD,
além de possibilitar a deleção dos dados.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 85


colodi@pr.gov.br
CICS

CECI
Command Level Interpreter
• Com a CECI podemos checar a sintaxe de
qualquer comando além de executá-los
realmente, sendo portanto muito útil durante
o período de testes de uma aplicação,
quando temos que fazer pequenas alterações
em arquivos para testar determinadas
condições no programa.
• A transação CECI é interativa, abrindo
painéis de opções conforme solicitação do
usuário.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 86
colodi@pr.gov.br
CICS

CECS
Command Level Syntax Check
• A CECS, como a CECI, é uma
interpretadora de comandos, porém
enquanto a CECI realmente executa o
comando, a CECS apenas checa a sua
sintaxe.
• Sua maior utilidade é no ambiente de
produção onde uma alteração em arquivos
pode gerar inúmeros problemas.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 87


colodi@pr.gov.br
CICS

I NTE RVALO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 88


colodi@pr.gov.br
CICS

Terminal Management
08/04/2018 Celepar-GSO-Disop CICS-Introdução 89
colodi@pr.gov.br
CICS

TERMINAIS - Devices
• Dos vários tipos de terminais que o CICS
suporta, destacamos:
– Terminal de vídeo
– Impressoras
– Micros emulando terminais
– Leitora de cartões virtuais (CR / LP)
– Consoles MVS / VSE

08/04/2018 Celepar-GSO-Disop CICS-Introdução 90


colodi@pr.gov.br
CICS

TERMINAIS - Método de acesso 1/2


• O principal método de acesso atualmente é
o VTAM (Virtual Telecommunications
Access Method), para MVS, VSE e VM.
• O VTAM é o proprietário dos terminais e o
CICS uma aplicação definida dentro do
VTAM.
• Quando o usuário escolhe a aplicação CICS
o VTAM estabelece uma sessão de trabalho
entre o terminal e o CICS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 91
colodi@pr.gov.br
CICS

TERMINAIS - Método de acesso 2/2


• O CICS tem que reconhecer o terminal que
está tentando estabelecer a sessão, caso
contrário o processo não terá sucesso. Para
isso o terminal deve ser definido dentro do
CICS na tabela de terminais.
• Quando falamos de CICS OS/2 e CICS em
Workstations, são outras plataformas e outros
métodos de acesso diferentes do VTAM.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 92


colodi@pr.gov.br
CICS

TERMINAIS - Definições 1/6

Terminais VTAM
• Quando é terminal VTAM a definição é feita
pelo RDO, através da transação CEDA e
pode ser:
– Hard-coded: Terminal definido de forma estática.
– Autoinstall: Instalação automática e dinâmica de
terminais baseada em modelos pré-definidos.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 93


colodi@pr.gov.br
CICS

TERMINAIS - Definições 2/6

Terminais NÃO VTAM


• Se o terminal não é VTAM, por exemplo uma
leitora de cartões virtual, que é um terminal
sequencial, a definição deve ser feita através
de macros assembler criando a tabela
DFHTCT, que deve ser compilada,
linkeditada e o CICS reciclado para validar as
mudanças.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 94


colodi@pr.gov.br
CICS

TERMINAIS - Definições 3/6

Definição Hard-Coded 1/2


• Para definirmos um terminal VTAM através
do RDO devemos criar duas entidades
diferentes utilizando a transação CEDA.
• DEFINE TERMINAL: Define-se Termid
(nome de 4 caracteres que o CICS utiliza), Netname
(nome real de 8 caracteres), e também qual o
Typeterm estará associado, para cada
terminal que for utilizado pelo CICS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 95
colodi@pr.gov.br
CICS

TERMINAIS - Definições 4/6

Definição Hard-Coded 2/2


• DEFINE TYPETERM: Define-se as
características genéricas de um grupo de
terminais como por exemplo o tamanho de
sua tela, se é colorida ou não, se tem ou não
tem User Área, ...
• No momento da instalação na memória a
associação das duas definições gera uma
entrada de terminal conhecida como
TCTTE - Terminal Control Table Terminal Entry.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 96
colodi@pr.gov.br
CICS

TERMINAIS - Definições 5/6

Autoinstall
• Criado em 1986, com o CICS v1.7.
• Define-se os modelos para Terminais e
Typeterms.
• Para cada terminal que solicitar sessão com o
CICS o mecanismo de autoinstall seleciona o
primeiro modelo compatível e instala
dinamicamente em momento de logon.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 97
colodi@pr.gov.br
CICS

TERMINAIS - Definições 6/6

Terminais Não Vtam


• Para terminais não vtam temos que construir a
tabela DFHTCT através das macros
correspondentes:
DFHTCT TYPE=INITIAL, ...
DFHTCT TYPE=TEMINAL, ...
.... ...
DFHTCT TYPE=FINAL
08/04/2018 Celepar-GSO-Disop CICS-Introdução 98
colodi@pr.gov.br
CICS

File Management
08/04/2018 Celepar-GSO-Disop CICS-Introdução 99
colodi@pr.gov.br
CICS

Gerenciamento de Arquivos 1/4

• Toda função solicitada ao CICS, por


transações desenvolvidas em Command
Level passa por um módulo chamado
DFHEIP (Exec Interface Program), que
analisa a função e passa para o módulo
responsável.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 100


colodi@pr.gov.br
CICS

Gerenciamento de Arquivos 2/4


• Quando o comando é para manuseio de
arquivos, entra o DFHFCP (File Control Program).
Este módulo consulta a tabela de arquivos
DFHFCT (File Control Table) , verificando se o
arquivo está definido, suas características,
tipo de operação permitida, etc. Estando
tudo OK o FCP pede ao método de acesso
para realizar a operação desejada.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 101
colodi@pr.gov.br
CICS
Operação de leitura de um VSAM

FCT
FCP
FILEA FILEA
...
TASK
EIP
EXEC CICS
READ
FILE(‘FILEA’)
...

08/04/2018 Celepar-GSO-Disop CICS-Introdução 102


colodi@pr.gov.br
CICS

Gerenciamento de Arquivos 3/4


• No caso de operações envolvendo Banco de
Dados, os próprios gerenciadores dos
bancos tem uma interface com o CICS.
Nesse caso o EIP e o FCP não são
solicitados.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 103


colodi@pr.gov.br
CICS

Gerenciamento de Arquivos 4/4


VSAM X BDAM
• O CICS trabalha com dois métodos de
acesso para manuseio de arquivos
– VSAM - Virtual Storage Access Method
– BDAM - Basic Direct Access Method
• O BDAM é um método de acesso antigo e
praticamente em desuso no mundo
• Obs: Para o CICS/6000 and CICS/400, file control é feito
por emulação de VSAM.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 104
colodi@pr.gov.br
CICS

VSAM - Estruturas de Dados

ESDS
KEY 5

3 5 8
KSDS
R4

R1 R2 R3
RRDS
Todas suportadas pelo CICS
08/04/2018 Celepar-GSO-Disop CICS-Introdução 105
colodi@pr.gov.br
CICS
ESDS - Entry Sequenced DataSet

•Cada registro é identificado para recuperação pelo


seu deslocamento em bytes a partir do início do
arquivo (RBA-Relative Byte Address).
•Registros novos são adicionados após o último.
•Podem ser atualizados, mas sem mudar o tamanho
•Não existe deleção (exclusão) de registros.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 106
colodi@pr.gov.br
CICS
KSDS-Key Sequenced DataSet
KEY 5

3 5 8
•Além da leitura direta, podemos também acessar
os registros de forma sequencial.
•Os registros podem ser incluídos em qualquer
posição, dependendo de sua chave.
•Podemos atualizar e deletar (excluir) os registros.
•A organização KSDS tem dois componentes:
Componente de Índice
Componente de Dados
08/04/2018 Celepar-GSO-Disop CICS-Introdução 107
colodi@pr.gov.br
CICS
RRDS-Relative Record DataSet
R4

R1 R2 R3

•Consiste de um número de “gavetas” de tamanho


fixo que são sequenciadas em ordem ascendente
pelo número relativo do registro.
•Cada gaveta contém um registro ou estará vazia,
aguardando o registro correspondente.
•Os registros podem ser acessados sequencialmente
ou diretamente pelo seu número relativo.
•Podemos também excluir os registros.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 108
colodi@pr.gov.br
CICS

VSAM Buffering - NSR


Non-Shared Resources 1/3
• Quando definimos um arquivo no CICS,
podemos indicar o número de buffers que
desejamos que sejam alocados na abertura do
arquivo.
• Esse mecanismo de alocação de buffers
exclusivos para determinado arquivo é
chamado de NSR-Non-Shared Resources,
dessa forma o arquivo sempre terá buffers
disponíveis para a operação de I/O.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 109
colodi@pr.gov.br
CICS

VSAM Buffering - NSR


Non-Shared Resources 2/3
• Por outro lado quando o arquivo estiver aberto
e sem utilização teremos desperdício de área
de memória ocupada pelos buffers.
• Se tivermos muitos arquivos, no momento em
que todos ou quase todos estiverm abertos
estaremos com muita memória alocada e
provavelmente mal exploradas.
• Por isso indica-se NSR para arquivos com
intensa utilização, para ganho de performance.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 110
colodi@pr.gov.br
CICS

VSAM Buffering - NSR


Non-Shared Resources 3/3
Request
File A File A
File A buffers

Request
File B File B
File B buffers

08/04/2018 Celepar-GSO-Disop CICS-Introdução 111


colodi@pr.gov.br
CICS

VSAM Buffering - LSR


Local-Shared Resources 1/2
• Utilizamos esse conceito para construir pools de
buffers e atribuí-los para determinado conjunto
de arquivos, dependendo de suas características.
• Temos com isso um uso mais eficiente da
memória porque os buffers são compartilhados.
• Redução da quantidade de I/Os pois os dados
podem já estar carregados em algum buffer
(lookaside).
• Isso leva a uma melhora da performance como
um todo.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 112
colodi@pr.gov.br
CICS

VSAM Buffering - LSR


Local-Shared Resources 2/2
Request
File A File A

Request Buffer Pool


File B File B

08/04/2018 Celepar-GSO-Disop CICS-Introdução 113


colodi@pr.gov.br
CICS

Definição de Arquivos
• RDO
– CEDA DEFINE FILE
– CEDA DEFINE LSRPOOL
• MACRO
– Opcional para Arquivos VSAM e obrigatório
para arquivos BDAM.
• LSR é default, se não definirmos os pools
de buffers, o CICS fará a definição baseado
em informações do catálogo.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 114
colodi@pr.gov.br
CICS
ALOCAÇÃO DINÂMICA

Job
CICS
Batch

Os arquivos são alocados na abertura e desalocados


no fechamento. Basta então fechar o arquivo no
CICS e atualizá-lo em Batch, aumentando assim a
flexibilidade do processamento, já que o CICS é um
produto para permanecer no ar 24 horas por dia.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 115
colodi@pr.gov.br
CICS

IMS x DB2 1/2

• O CICS suporta também os bancos de dados DB2


e IMS. Os acessos aos bancos são feitos por
interfaces próprias dos mesmos.
• DB2 - É um banco de dados de estrutura relacional com
dados armazenados em tabelas bi-dimensionais compostas
por linhas e colunas, que podem ser comparadas a registros
e campos de um arquivo, respectivamente. Para solicitar
serviços ao DB2 a aplicação CICS emite comandos EXEC
SQL que são interpretados pela interface entre o CICS e o
DB2, chamada CICS ATTACHMENT FACILITY.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 116


colodi@pr.gov.br
CICS

IMS x DB2 2/2

• A família DB2: (DB2 for ESA, DB2 for VSE, DB2 for VM,
DB2 for AS/400, DB2 for RISC System/6000, DB2 for OS/2, and DB2
for UNIX)
• IMS - Esse banco é de estrutura hierárquica
(pai/filho) e o acesso aos dados é feito através de
comandos EXEC DLI a partir de transações CICS.
• Atualmente outros bancos de dados relacionais
também são suportados, tais como: Oracle,
Sybase, Ingres e Informix.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 117


colodi@pr.gov.br
CICS

I NTE RVALO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 118


colodi@pr.gov.br
CICS

Data Integrity and Recovery


08/04/2018 Celepar-GSO-Disop CICS-Introdução 119
colodi@pr.gov.br
CICS

CICS
File

Garantir que enquanto um usuário atualiza um


registro, outros não atualizam os mesmos dados
simultaneamente, o que provavelmente, resultaria
em perda de integridade.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 120


colodi@pr.gov.br
CICS
Controle Exclusivo 1/3

Task A Task B
Update Rec6 Update Rec6

Rec5 Rec6 Rec7


File A

08/04/2018 Celepar-GSO-Disop CICS-Introdução 121


colodi@pr.gov.br
CICS

Controle Exclusivo 2/3

• O VSAM e o CICS utilizam esse mecanismo


para evitar que ocorram atualizações simultâneas
em registros do mesmo Control Interval (CI).
• Quando uma task pede a atualização de um
registro, todo o CI fica “preso” a essa task e só é
liberado quando a atualização for completada.
Enquanto isso não ocorre, as tasks que desejam
atualizar registros do mesmo CI ficam em Wait,
isto é, aguardando sua liberação
08/04/2018 Celepar-GSO-Disop CICS-Introdução 122
colodi@pr.gov.br
CICS

Controle Exclusivo 3/3

• Se o arquivo for protegido (LOG=YES na


definição), após a sua atualização o VSAM
normalmente libera o CI, mas o CICS “prende”
o registro atualizado à task até que a mesma
termine ou a Logical Unit of Work (LUW) seja
completada.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 123


colodi@pr.gov.br
CICS

Dinamic Transaction Backout ( DTB ) 1/3

TASK A File Work Área Save Image


READ UPDATE

UPDATE

ABEND Reapply
...
Saved
Image

08/04/2018 Celepar-GSO-Disop CICS-Introdução 124


colodi@pr.gov.br
CICS

Dinamic Transaction Backout ( DTB ) 2/3

• Quando um arquivo é protegido


(LOG=YES na definição), na ocorrência de
uma falha na execução da transação
(Abend), o CICS desfaz as alterações
efetuadas voltando o arquivo à situação em
que estava anteriormente.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 125


colodi@pr.gov.br
CICS

Dinamic Transaction Backout ( DTB ) 3/3

• Quando ocorre a atualização do registro, o


CICS salva a imagem anterior (before image)
em uma área de memória chamada Dynamic
Log. Se a task for interrompida antes do seu
término, o CICS reaplica ao arquivo a imagem
anterior a atualização, voltando o registro ao
estado em que se encontrava. Em seguida,
emite para o usuário uma mensagem indicando
que a task sofreu um abend e que o backout foi
bem sucedido.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 126
colodi@pr.gov.br
CICS

L U W - Lógical Unit of Work


• A LUW tem início quando a task requisita uma
atualização de um recurso protegido
(recuperável). Essa LUW termina quando a
task for finalizada ou então quando o programa
solicitar um ponto de sincronismo explícito,
através do comando EXEC CICS
SYNCPOINT.
• Quando a LUW é fechada, todas as alterações
feitas em recursos protegidos são efetivadas.
• Enquanto a LUW não termina a task é chamada
de “In-flight”.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 127


colodi@pr.gov.br
CICS System Failure
LUW
TASK A
SOT EOT
FILE MOD.
BACKOUT

LUW LUW LUW LUW


TASK B
SOT SYNC. SYNC. SYNC. EOT

FILE MOD. FILE MOD. FILE MOD. FILE MOD.

BACKOUT
LUW
TASK C
SOT FILE MOD. EOT

FILE MOD.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 128


colodi@pr.gov.br
CICS
Transferência da Poupança
TASK para a Conta Corrente
UPDATE
(ARQ.POUPANÇA)
( - R$ 300,00) LOG =YES
POUPANÇA
UPDATE
(ARQ. C/C)
(+ R$ 300,00)

LUW COMPLETA
OU BACKED OUT C/C LOG =YES
...

Obs: Bancos de dados tem seus próprios mecanismos de recuperação e integridade


08/04/2018 Celepar-GSO-Disop CICS-Introdução 129
colodi@pr.gov.br
CICS

System Failure Backout


• Para falhas de tasks (abends), o CICS recupera
imagens anteriores dos recursos protegidos a partir de
áreas de memória chamadas Dynamic Logs.
• O CICS além de guardar imagens anteriores na
memória, as armazena no SYSTEM LOG.
• Na reinicialização do CICS em EMERGENCY
RESTART, o SYSTEM LOG é lido do fim para o
início e todas as LUWs pendentes serão desfeitas
(backout).
• Quando termina a inicialização, o CICS estará na mesma
posição em que estava no momento da queda.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 130


colodi@pr.gov.br
CICS

Emergency Reestart

SYSTEM LOG
(journal)
CICS
Backout
Files, TS, TD, DB

08/04/2018 Celepar-GSO-Disop CICS-Introdução 131


colodi@pr.gov.br
CICS

START-UP OPTIONS

COLD
WARM
AUTO EMERGENCY

08/04/2018 Celepar-GSO-Disop CICS-Introdução 132


colodi@pr.gov.br
CICS

Start-up Options
• COLD:
– O CICS é inicializado como se tivesse sido
recém instalado. Todas as informações do
system log são ignoradas, portanto não existe
nenhum tipo de backout e todos os recursos do
RDO são lidos do arquivo DFHCSD e
instalados na memória.
• AUTO:
– O CICS decide como será reinicializado,
dependendo de como terminou a última rodada.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 133
colodi@pr.gov.br
CICS

Start-up Options
• WARM RESTART:
– A rodada anterior terminou de forma controlada
portanto não há backout a ser feito e os recursos
instalados via CEDA continuam disponíveis da
mesma forma que ficaram ao término da rodada
anterior.
• EMERGENCY RESTART:
– A rodada anterior terminou de forma não
controlada portanto será efetuado o processamento
de backout sendo que os recursos instalados via
CEDA permanecem disponíveis como na rodada
anterior.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 134
colodi@pr.gov.br
CICS

TERMINATION OPTIONS

NORMAL
I M M E D IAT E
UNCONTROLLED

08/04/2018 Celepar-GSO-Disop CICS-Introdução 135


colodi@pr.gov.br
CICS
Termination Options
• SHUTDOWN NORMAL:
– Todas as tasks “In-flight” são executadas até o
fim e a saída é controlada.
• SHUTDOWN IMMEDIATE:
– Todas as tasks “In-flight” são canceladas
portanto ocorre backout quando o sistema for
reinicializado. Apesar disso, é considerado
como saída controlada já que depende da
vontade do operador.
• UNCONTROLLED:
– Término inesperado da execução do CICS (falta
de energia, falha, abend, etc). Essa situação
requer backout na reinicialização.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 136
colodi@pr.gov.br
CICS

System Management
08/04/2018 Celepar-GSO-Disop CICS-Introdução 137
colodi@pr.gov.br
CICS
Transactions

•C E M T - Master Terminal

•C E O T - Operator Terminal
A
•C E D B - Resource Derfinition Online
C

O CICS oferece vária ferramentas para gerenciamento


do sistema. Dentre elas destacamos as transações:
08/04/2018 Celepar-GSO-Disop CICS-Introdução 138
colodi@pr.gov.br
CICS

Transações de Administração
• CEMT (Master Terminal) - A transação mais
poderosa do CICS. Consulta e altera
variáveis do sistema e atributos de recursos.
Exemplo: Abre e fecha arquivos, desabilita
programas e transações, altera status de
terminais, tira o CICS do ar e muito mais.
Deve portanto ser utilizada com bastante
critério.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 139
colodi@pr.gov.br
CICS

Transações de Administração
• CEOT (Operator Terminal) - Consulta e altera
apenas status de terminais.
• CEDx (Resource Definition Online)
Composta por:
– CEDA - Define, altera, consulta e instala recursos.
– CEDB - Consulta e instala recursos.
– CEDC - Apenas consulta recursos definidos.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 140


colodi@pr.gov.br
CICS
Security

Até a versão 3.1.1, o CICS oferecia um


mecanismo próprio de segurança (interna),
que era baseada em chaves numéricas
associadas às transações e aos recursos
definidos, e de acordo com as chaves o usuário tinha ou
não acesso permitido.
Como esse mecanismo de segurança era pouco eficaz, a
partir do CICS v3.2.1 ele foi extinto e tornou-se
necessária a contratação de um gerenciador de segurança
externo como o Top Secret da CA, o RACF da IBM ou
outros existentes no mercado.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 141
colodi@pr.gov.br
CICS
Determinação de Problemas

08/04/2018 Celepar-GSO-Disop CICS-Introdução 142


colodi@pr.gov.br
CICS

Determinação de Problemas
• O CICS está sujeito a falhas do tipo:
– Uma aplicação invadindo área de outras
– Loops
– Aplicações com Program Check
• Que tipo de auxílio podemos ter, além das
ferramentas para Command Level (CEDF),
para solucionar esses tipos de problemas?
Afinal o CICS precisa ter total
disponibilidade e por isso as falhas tem que
ser corrigidas no menor tempo possível.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 143
colodi@pr.gov.br
CICS

Ferramentas para Determinação


de Problemas 1/4
O CICS oferece algumas ferramentas:
• DUMP
– Transaction Dump - Um pequeno Dump é
fornecido quando ocorre um abend de task.
Nele o CICS formata as principais áreas e
blocos de controle da transação que sofreu o
abend.
– System Dump - Dump de praticamente todas as
áreas e blocos de controle do CICS. Requer boa
experiência para ser analisado. Utilizado para
problemas como violações de memória e
quedas de CICS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 144
colodi@pr.gov.br
CICS

Ferramentas para Determinação


de Problemas 2/4
• TRACE
– É a gravação do “caminho” percorrido pelos
módulos de gerência e pelas tasks durante toda
a rodada, isto é, todas as operações que estão
sendo processadas no CICS. O trace fornece
uma visão das operações no momento do erro,
facilitando a determinação do problema. É
muito importante para resolução de loops.
Existem os seguintes tipos de TRACE:

08/04/2018 Celepar-GSO-Disop CICS-Introdução 145


colodi@pr.gov.br
CICS

Ferramentas para Determinação


de Problemas 3/4
• Trace MAIN: O trace é gravado em uma área de
memória pré-alocada. No momento da emissão de
um dump, ele é incluído em seu conteúdo.
• Trace AUX: Trace auxiliar semelhante ao Main
trace porém seu conteúdo é gravado em disco.
Não é necessário um dump para obter esse trace
pois a formatação é feita via batch através do
programa DFHTUP.
• Trace MVS/GTF: A partir da v3.1.1 existe a
possibilidade de obter o trace com o GTF do
MVS.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 146
colodi@pr.gov.br
CICS

Ferramentas para Determinação


de Problemas 4/4
• Messages and Codes: Manual em papel e a opção
online (transação CMAC) a partir da v3.1.1
• IBM Support: CAC - Centro de Atendimento ao
Cliente)

08/04/2018 Celepar-GSO-Disop CICS-Introdução 147


colodi@pr.gov.br
CICS

Medições e Ajustes
• As estatísticas que o CICS fornece são uma
ferramenta importante para análise do
ambiente e otimização de sua performance.
• A extração das estatísticas pode ser
solicitada em intervalos regulares ou a
qualquer momento desejado, a fim de
verificar como se encontra o sistema em
determinado instante.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 148
colodi@pr.gov.br
CICS

Medições e Ajustes
• Destaque para os seguintes tópicos:

– TASK - através das estatísticas, sabemos quantas tasks


foram processadas na rodada, qual foi o pico de tasks
atingido, ...
– TRANSACTION - Podemos saber quantas vezes foi
processada cada transação do usuário, conhecendo assim
os sistemas mais utilizados, os pouco utilizados, ...
– PROGRAM - mostra quantas vezes cada programa foi
executado, seu fetch count (carga na memória), ...
– FILE - quantas solicitações ocorreram para cada arquivo,
que tipos de operações foram realizadas, ...
– TD/TS - informa o número total de solicitações, contagem
de waits por falta de buffers ou memória, ...
– E muito mais . . .
08/04/2018 Celepar-GSO-Disop CICS-Introdução 149
colodi@pr.gov.br
CICS

CICS Monitor Facility


• Outra ferramenta disponível para medições e ajustes
é o Monitor Facility. O CICS coleta dados como por
exemplo: do tempo total de processamento da
transação, quanto foi gasto de CPU, quanto foi
perdido aguardando operações de I/O, tempo gasto
em dispatch, ...
• Normalmente os dados de Monitor Facility do CICS
são interpretados pelos monitores oferecidos no
mercado, já que são dados complexos para
verificarmos sem ferramentas de auxílio.
• Pelos dados de monitor temos indicações de quais
sistemas podem estar impactando o CICS, gargalos,
contenções de I/O, ...
• Através dos dados de monitor temos condições de
saber se os recursos estão sendo bem utilizdos pelas
transações ou não.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 150
colodi@pr.gov.br
CICS

I NTE RVALO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 151


colodi@pr.gov.br
CICS

Communication
08/04/2018 Celepar-GSO-Disop CICS-Introdução 152
colodi@pr.gov.br
CICS
Interconnected System
CICS/ESA CICS CICS
CICS
CICS/VSE /400 /6000 (Não IBM)

CICS for
OS/2

CICS for
OS/2 Client OS/2 OS/2 Client

Dos Client Dos Client

Mac Client Windows Client Windows Client Mac Client


08/04/2018 Celepar-GSO-Disop CICS-Introdução 153
colodi@pr.gov.br
CICS

Comunicações
• O CICS é um produto muito “sociável”,
pois consegue conversar com quaisquer
outros CICS da família e também com
outros produtos que conversam utilizando
os protocolos de comunicação suportados.
• Além disso, o CICS conta também com
estrutura Client/Server, ou seja, podemos
acessar serviços do CICS/ESA a partir de
um micro onde estamos trabalhando com
Windows, por exemplo.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 154
colodi@pr.gov.br
CICS

Tipos de Comunicações

• O CICS trabalha com duas formas de


comunicação, sendo que em ambas a
interligação é feita através da definição de
conexões em cada CICS envolvido no
processo.
–MRO
–ISC

08/04/2018 Celepar-GSO-Disop CICS-Introdução 155


colodi@pr.gov.br
CICS

MRO - Multi-Region Operation


CICS CICS

Trata-se da comunicação de um CICS com


outros CICS sob o mesmo sistema
operacional. Portanto é uma comunicação
unicamente CICS-CICS.
• O MRO utiliza dois mecanismos para efetivar
a comunicação
– IRC - (Inter-Region Communication) - um CICS
conversa com outro através de SVCs.
– XM - (Cross-Memory) - exclusivo do MVS, para
comunicação entre Address Spaces.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 156
colodi@pr.gov.br
CICS

ISC - Intersystem Communication


CICS
CICS LU6.2(APPC)
LU6.1
• Esse tipo de comunicação é realizado através do VTAM, e
possibilita a interligação de CICS sob o mesmo sistema
operacional ou sistemas operacionais distintos.
• Permite a comunicação entre CICS nas mais diversas
plataformas, e também interligar um CICS com outros
produtos que “conversam” através dos protocolos de
comunicação LU6.1 e principalmente LU6.2 (APPC).
• O ISC é a forma de comunicação mais flexível, já que
permite interligar diferentes plataformas e produtos situados
em qualquer localidade.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 157
colodi@pr.gov.br
CICS

Facilidades de Comunicação 1/2

Através do MRO e do ISC temos:


– FUNCTION SHIPPING (Navegação de função) -
a partir de um CICS podemos acessar dados em
outros CICS, de forma transparente para o
programador e para o usuário final.
– TRANSACTION ROUTING (Roteamento de
transação) - o usuário conecta-se a um CICS,
chama o código de uma transação e esta é
processada inteiramente em outro CICS. Isso
ocorre de forma transparente para o programador
e também para o usuário final.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 158
colodi@pr.gov.br
CICS

Facilidades de Comunicação 2/2

– DISTRIBUTED TRANSACTION PROCESSING


(Processamento distribuído de transação) - um
processamento é dividido em duas ou mais
transações, cada uma executando em um CICS
distinto. O processo é transparente para o usuário
final, mas sua programação é um tanto complexa.
– DISTRIBUTED PROGRAM LINK (Link
distribuído de proramas) - através do comando
EXEC CICS LINK, podemos fazer chamadas a
programas que serão processados em outros CICS.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 159


colodi@pr.gov.br
CICS
Function Shipping
CICS 1 CICS 2

Transação A
Read Update Request Mirror
File(MASTER)
Program
PREÇOS Read Update Reply MASTER
File(PREÇOS)

08/04/2018 Celepar-GSO-Disop CICS-Introdução 160


colodi@pr.gov.br
Function Shipping
• A transação ‘A’, no CICS 1 pede a leitura do arquivo
MASTER, pertencente ao CICS2. Para atender a
solicitação uma transação “espelho” (Mirror) é
disparada no CICS2, que realiza a leitura e devolve os
dados ao CICS1.
• Funcion Shipping suporta acesso remoto a arquivos,
filas de Temporary Storage (TS) e Transient Data
(TD). A integridade dos dados é total. Se ocorrer um
abend em um dos lados, o outro é imediatamente
informado para ocorrer o sincronismo dos eventos.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 161
colodi@pr.gov.br
CICS
Transaction Routing
CICS 1 CICS 2
Inicío da
Transação A

Transação A

08/04/2018 Celepar-GSO-Disop CICS-Introdução 162


colodi@pr.gov.br
CICS

Transaction Routing
• Uma transação iniciada em um CICS na verdade é
totalmente processada em outros CICS
interligados.
• Desta forma, podemos fazer um balanceamento de
carga entre diversos CICS, sem que o usuário
perceba o que está ocorrendo.
• Possibilita também uma redução do tráfego na
rede, já que os programas podem ser processados
onde os dados residem, evitando a sua
transmissão.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 163
colodi@pr.gov.br
CICS
Distributed Transaction Processing
CICS 1 CICS 2
Synchornous Transação B
Transação A
Data Exec Cics
Exec Cics Receive
CONVERSE
Data MASTER
PREÇOS Exec Cics
Send

08/04/2018 Celepar-GSO-Disop CICS-Introdução 164


colodi@pr.gov.br
Distributed Transaction Processing 1/2
• O Distributed Transaction Processing é uma
facilidade de comunicação onde o processamento
é distribuído em duas ou mais transações, cada
uma processando em um CICS diferente porém de
forma síncrona.
• Quando uma transação é iniciada pelo usuário no
CICS1, o programa solicita que seja iniciada uma
transação parceira n CICS2. As duas trabalham em
conjunto durante todo o processo.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 165
colodi@pr.gov.br
Distributed Transaction Processing 2/2
• O DTP requer conhecimentos mais profundos de
programação, pois uma aplicação deve ser
desenhada especificamente para comunicar-se
com a outra, de forma que existem comandos de
concepção mais complexa a serem utilizados.
• O DTP é a forma mais eficaz e flexível de
comunicação, pois permite variações de
processamento não permitidas em outras
facilidades de comunicação.
• O protocolo LU6.2, que faz parte da arquitetura
SNA, é amplamente utilizado em DTP.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 166
colodi@pr.gov.br
CICS
Distributed Program Link
CICS 1 CICS 2
Communications
Transação A Programa X
Link Program(‘X’) Área

COMMAREA
(Data)
Return
PREÇOS COMMAREA MASTER
Communications (Data)
Área

08/04/2018 Celepar-GSO-Disop CICS-Introdução 167


colodi@pr.gov.br
CICS

DPL - Distributed Program Link 1/3


• Quando uma aplicação CICS emite o comando
EXEC CICS LINK, o controle é passado para o
programa solicitado que é processado, e ao terminar
dvolve o controle ao programa chamador.
• O DPL é uma facilidade de comunicação
relativamente nova no CICS, e permite que o
programa chamado seja remoto, ou seja, que resida
em outros CICS que estejam interligados ao CICS
onde está sendo processado o programa chamador.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 168
colodi@pr.gov.br
CICS

DPL - Distributed Program Link 2/3


• Com o comando Link podemos passar uma
área de dados para o programa chamado, e
depois receber dados quando o controle é
devolvido. O DPL surgiu como uma ótima
opção para acessarmos, por exemplo, bancos
de dados remotos.
• O processamento é transparente para o
programador e para o usuário final.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 169
colodi@pr.gov.br
CICS

DPL - Distributed Program Link 3/3


• Como o DPL é uma facilidade até certo
ponto recente, nem todos os CICS podem
iniciar o processo, isto é, emitir o comando
link para um programa remoto.
• Por outro lado, qualquer CICS pode receber a
solicitação, isto é, processar o programa
chamado.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 170


colodi@pr.gov.br
CICS

D P L options CICS/6000
CICS OS/2
CICS/6000 CICS/400
CICS OS/2 CICS/ESA 3.3
CICS/VSE 2.2
CICS/400
CICS/ESA 3.3
CICS/MVS
CICS/VSE 2.2 CICS/VSE 2.1
CICS/ESA 3.1
CICS/ESA 3.2

08/04/2018 Celepar-GSO-Disop CICS-Introdução 171


colodi@pr.gov.br
CICS

CICS ISC - Flexibilidades


• Através do Inter System Communication (ISC) podemos
ter acesso a todas as facilidades de comunicação existentes,
com uma grande vantagem: interligação de sistemas CICS
em qualquer plataforma existente.
• Desse modo conseguimos grande flexibilidade para
executar transações remotas, acessar dados remotos de
forma transparente, distribuir funções e também
implementar aplicações cliente/servidor interligando
diferentes plataformas.
• Além disso o ISC permite que o CICS “converse” com
outros sistemas não CICS, através do protocolo APPC.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 172
colodi@pr.gov.br
CICS
ISC

DISTRIBUTED
PROGRAM
LINK
FUNCTION
SHIPPING
ISC
TRANSACTION
DISTRIBUTED ROUTING
TRANSACTION
PROCESSING

08/04/2018 Celepar-GSO-Disop CICS-Introdução 173


colodi@pr.gov.br
CICS Configuração Exemplo
CICS CICS
CICS AOR FOR
TOR CICS CICS
AOR FOR
• O CICS amarelo é chamado de TOR (Terminal Owning Region). Ele é
proprietário dos terminais, portanto os usuários estabelecem sessões de trabalho
sempre através dele.
• Os CICS azuis são chamados de AOR (Application Owning Region). Nesses
CICS são processadas as transações dos usuários, que as iniciam a partir do
CICS TOR.
• Os CICS verdes são conhecidos como FOR ou DOR (File/Dataset Owning
Region). Neles residem os arquivos que são acessados pelas aplicações que
processam nos AOR.
• Esse tipo de configuração pode existir por diversas razões, desde balanceamento
de carga até por motivos de distribuição específica de funções.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 174
colodi@pr.gov.br
CICS

Resumo - Porque Comunicar ? 1/4


• AVAILABILITY AND RESPONSE TIME REQUIREMENTS
– Disponibilidade e tempo de resposta - um único
CICS com processamento muito carregado acaba
sendo muito menos eficaz do que vários CICS
interligados. Portanto, melhor tempo de resposta e
maior disponibilidade, já que na eventual falha de
um deles os outros continuam no ar.
• LOAD BALANCING
– Balanceamento de carga - distribuir as aplicações
entre vários CICS otimiza a performance, já que
cada um deles trabalha sem sobrecarga.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 175
colodi@pr.gov.br
CICS

Resumo - Porque Comunicar ? 2/4


• APPLICATION ISOLATION
– Isolamento de aplicações - uma aplicação que não
esteja bem testada pode ser isolada em um dos
CICS. Caso a aplicação derrube esse CICS, os
usuários de outras aplicações não são penalizados, já
que os outros CICS não saem do ar.
• TAKE ADVANTAGE OF PLATFORM STRENGTHS
– Exploração de plataformas poderosas - podemos por
exemplo tirar vantagem de grandes CPUs com
vários processadores, através da utilização de vários
CICS interligados sob essa mesma CPU.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 176
colodi@pr.gov.br
CICS
Resumo - Porque Comunicar ? 3/4
• MINIMIZE PUBLIC NETWORK TRAFFIC
– Minimizar o tráfego de dados nas redes -
processando as aplicações nos CICS proprietários
das bases de dados, ocorre diminuição de
transmissão nas linhas, acarretando em uma melhora
sensível na performance.
• ECONOMIC CONSIDERATIONS
– Considerações econômicas - distribuindo parte das
aplicações para plataformas menores, como por
exemplo o CICS for OS/2 permite uma redução nos
custos, já que o Mainframe necessita de uma
estrutura muito mais cara de funcionamento.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 177
colodi@pr.gov.br
CICS

Resumo - Porque Comunicar ? 4/4


• DISTRIBUTED PROCESSING / COOPERATIVE
PROCESSING
– Processamento Cooperativo / Distribuído - podemos
implementar estruturas de clientes/servidores, e
desta forma distribuir o processamento total,
utilizando para isso vários tipos de plataformas com
total flexibilidade.

08/04/2018 Celepar-GSO-Disop CICS-Introdução 178


colodi@pr.gov.br
CICS
Protocolos de comunicação entre CICS
"From" CICS system "To" CICS system(s) Communication
====================================================================
CICS/ESA, CICS/VSE CICS/ESA, CICS/VSE, SNA LU6.2*
CICS/6000, CICS for
OS/2, CICS/400
CICS for OS/2 All CICS platforms SNA LU6.2
CICS for OS/2 CICS for OS/2 NetBIOS or TCP/IP
CICS/400 All CICS platforms SNA LU6.2
CICS/6000 All CICS platforms SNA LU6.2
CICS/6000 Other CICS/6000 TCP/IP
systems
CICS Clients CICS/ESA and CICS/VSE SNA LU6.2
(via ECI), and
CICS/400
CICS Clients CICS for OS/2, and TCP/IP
CICS on Open Systems
CICS Clients CICS for OS/2 (not NetBIOS
Macintosh)
==================================================================
08/04/2018 Celepar-GSO-Disop CICS-Introdução 179
colodi@pr.gov.br
CICS CICSPLEX ___
CICS/ESA CICS/VSE __
SM __ ___
__ ___

SERVER NETWORK
OS/2 Client

CICS OS/2
Server __
__
__
Dos Client
--- CICS/400

• O CICSPLEX SM (System Manager) permite gerenciar múltiplos CICS como


se fossem um único. Pode gerenciar sistemas CICS independentes em CPUs
conectadas, assim como múltiplos CICS interconectados.
• O operador do CICSPLEX SM pode, a partir de um único CICS, exibir e
atualizar informações sobre status e recursos de todas as regiões CICS
gerenciadas.
• Exemplo: Um único comando da transação CEMT é suficiente para agir em
todos os recursos de determinado tipo em todos os CICS gerenciados pelo
CICSPLEX SM.
08/04/2018 Celepar-GSO-Disop CICS-Introdução 180
colodi@pr.gov.br
CICS

CICS

CICS
08/04/2018 Celepar-GSO-Disop CICS-Introdução 181
colodi@pr.gov.br
CICS

OBRIGADO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 182


colodi@pr.gov.br
CICS

OBRIGADO

08/04/2018 Celepar-GSO-Disop CICS-Introdução 183


colodi@pr.gov.br

Você também pode gostar