| Bellacosa Mainframe e o call em cobol parte xii |
☕💥 A Jornada do Padawan COBOL – Parte 12
Desvendando o Universo dos CALLs no Mainframe
PSA, CVT, ASCB, TCB, RB, ACEE, CSA, ECSA, LSQA, SQA e os Mistérios dos Control Blocks que Sustentam o z/OS
Ou como descobrir que existe um universo inteiro escondido em endereços hexadecimais que praticamente nenhum desenvolvedor COBOL vê
Por Vagner Bellacosa – Bellacosa Mainframe
O Dia em que o Padawan Descobre o Lado Oculto do z/OS
Depois de onze capítulos, o Padawan já acredita compreender bastante coisa.
Conhece:
✅ CALL
✅ LE
✅ CICS
✅ JES2
✅ GRS
✅ VVDS
✅ RMF
✅ SMF
✅ Telum
Até que um Sysprog abre IPCS.
Digita:
IP XDATA
E aparece:
PSA
CVT
TCB
ASCB
ACEE
RB
Padawan:
— O que é isso?
Veterano:
— O esqueleto do z/OS.
O Grande Segredo
No Mainframe tudo é Control Block.
Tudo.
Usuário.
Job.
CPU.
Storage.
Segurança.
Dataset.
Task.
Transação.
Tudo.
Visualmente
Programa COBOL
↓
TCB
↓
ASCB
↓
CVT
↓
PSA
↓
Hardware
PSA
Processor Storage Area
O primeiro bloco.
O mais importante.
Endereço:
00000000
Existe uma PSA.
Por processador.
Contém:
PSW
Interrupções
TCB Atual
Old PSW
New PSW
Save Areas
O PSW
Program Status Word
Coração da CPU.
Possui:
Endereço instrução
Modo
Máscaras
Estado
Exemplo
078D1000 80000000
Veteranos gostam.
Muito.
CVT
Communications Vector Table
O GPS do z/OS.
Tudo aponta.
Para CVT.
CVT aponta.
Para:
SMCA
JES
TCB
ASVT
Catalog
LPDB
CSA
Como encontrar
Assembler
L R1,CVTPID
IPCS também.
ASCB
Address Space Control Block
Representa.
Address Space.
Exemplo
TSO
DBM1
CICSA
JES2
Cada um.
Tem.
ASCB.
Contém
Nome
ASID
Usuário
TCBs
Storage
TCB
Já vimos.
Mas agora.
Internamente.
Task Control Block
Representa.
Thread.
Execução.
Task.
Contém.
Registradores.
Prioridade.
PSW.
RB.
RB
Request Block
Histórico.
Execução.
CALL.
Empilha RB.
Retorno.
Desempilha.
Visualmente
MAIN
↓
RB
↓
CALL A
↓
RB
↓
CALL B
↓
RB
ACEE
Accessor Environment Element
Favorito do RACF.
Representa.
Usuário.
Possui:
Userid
Groups
Permissões
Security Label
Quando faz:
TSO LOGON
ACEE nasce.
CSA
Common Storage Area
Memória compartilhada.
Todos acessam.
Perigosa.
Corrupção.
Pode derrubar sistema.
ECSA
Extended CSA
Versão ampliada.
Maior.
Melhor.
SQA
System Queue Area
Storage crítico.
Kernel usa.
Pouco espaço.
Muito importante.
LSQA
Local System Queue Area
Privada.
Por Address Space.
Subpools
Veteranos gostam.
Muito.
Exemplo
229
230
241
Storage.
Especializado.
Save Area
Assembler clássico.
72 bytes.
Exemplo
STM 14,12,12(13)
Salva.
Contexto.
IPCS
Melhor amigo.
Do Sysprog.
Pode mostrar.
PSA
TCB
ASCB
RB
ACEE
Exemplo
IP MTRACE
CEEDUMP
Também ajuda.
Mostra.
Stack.
Call chain.
Offsets.
O caminho de um CALL
Padawan escreve:
CALL 'PAGTO'
Internamente.
Pode ocorrer.
COBOL
↓
LE
↓
TCB
↓
RB
↓
PSW
↓
CPU
↓
RETURN
Tudo.
Em microssegundos.
O grande erro
Padawan pensa.
CALL é simples.
Veterano pensa.
CALL cria.
RB.
Storage.
Stack.
TCB Activity.
LE.
Heap.
PSW Update.
Ferramentas Jedi
IPCS
AMBLIST
CEEDUMP
RMF
SMF
VERBX
TRACE
Easter Egg Mainframe
Existe um grupo.
Capaz de olhar.
Isto.
TCB
RB
ACEE
PSA
CVT
ASCB
E dizer.
Em cinco minutos.
Quem é usuário.
Qual programa.
Onde caiu.
Quanto storage.
Qual PSW.
Qual registrador.
São conhecidos.
Como.
Os Senhores dos Control Blocks
Checklist Jedi
✅ Entender PSA
✅ Conhecer CVT
✅ Aprender ASCB
✅ Estudar TCB
✅ Entender RB
✅ Conhecer ACEE
✅ Respeitar CSA
✅ Estudar LSQA
✅ Explorar IPCS
✅ Ler CEEDUMP
✅ Conhecer Subpools
Filosofia Jedi – Parte 12
O Padawan acredita:
z/OS executa programas.
O Desenvolvedor experiente pensa:
z/OS gerencia recursos.
O Sysprog compreende:
z/OS é uma gigantesca coleção de Control Blocks conversando entre si.
E o Arquiteto IBM Z sabe que, por trás de um simples:
CALL 'SUBPGM'
existe um universo de PSA, CVT, TCB, RB, ACEE, Save Areas, registradores, PSWs e estruturas de controle que sustentam alguns dos sistemas mais importantes do planeta.
Sem comentários:
Enviar um comentário