Translate

Mostrar mensagens com a etiqueta CVT. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta CVT. Mostrar todas as mensagens

segunda-feira, 2 de dezembro de 2019

☕💥 A Jornada do Padawan COBOL – Parte 12 Desvendando o Universo dos CALLs no Mainframe

 

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.