IMS DB - Blocos de Controle



O IMS Blocos de controle definem a estrutura de dados do IMS e um programa do acesso a eles. O diagrama a seguir mostra a estrutura da IMS blocos de controle.

Bloco de Controle

DL/I utiliza as seguintes três tipos de blocos de controle.

  • Database Descriptor (DBD)
  • Program Specification Block (PSB)
  • Access Control Block (ACB)

Database Descriptor (DBD)

Os pontos de observação:

  • DBD descreve a completa estrutura física da base de dados uma vez que todos os segmentos foram definidos.

  • Durante a instalação de um DL/I banco de dados, um DBD devem ser criadas, como é necessário para acessar os dados DO IMS.

  • Os aplicativos podem usar diferentes vistas da DBD. Eles são chamados Application e estruturas de dados são especificados no Programa Especificação Bloquear.

  • O administrador do banco cria um DBD através da codificação DBDGEN comandos de controle.

DBDGEN

DBDGEN descritor é um banco gerador. Criando blocos de controle é de responsabilidade do administrador do banco de dados. Todos os a carregar os módulos são armazenados na biblioteca DO IMS. Demonstrações macro linguagem de montagem são usados para criar blocos de controle. Abaixo está um código de exemplo que mostra como criar um controle DBDGEN DBD usando declarações:

PRINT	NOGEN
DBD	NAME=LIBRARY,ACCESS=HIDAM
DATASET	DD1=LIB,DEVICE=3380
SEGM	NAME=LIBSEG,PARENT=0,BYTES=10
FIELD	NAME=(LIBRARY,SEQ,U),BYTES=10,START=1,TYPE=C
SEGM	NAME=BOOKSEG,PARENT=LIBSEG,BYTES=5
FIELD	NAME=(BOOKS,SEQ,U),BYTES=10,START=1,TYPE=C
SEGM	NAME=MAGSEG,PARENT=LIBSEG,BYTES=9
FIELD	NAME=(MAGZINES,SEQ),BYTES=8,START=1,TYPE=C
DBDGEN
FINISH
END

Vamos entender os termos usados no acima DBDGEN:

  • Quando você executar o comando acima declarações de JCL, ele cria uma estrutura física onde BIBLIOTECA é a raiz segmento, e livros e MAGZINES são suas crianças os segmentos.

  • O primeiro DBD macro declaração identifica o banco de dados. Aqui, temos de mencionar o nome e o acesso que é utilizado pelo DL/I para acessar esse banco de dados.

  • O segundo conjunto macro declaração identifica o arquivo que contém o banco de dados.

  • O segmento tipos são definidos usando o macro SEGM declaração. Temos de especificar o PARENT do segmento. Se ele for um segmento raiz, em seguida, mencionar PARENT=0.

A tabela a seguir mostra os parâmetros utilizados no campo macro declaração:

Parâmetros Descrição
Nome O nome do campo, geralmente 1 a 8 caracteres
Bytes Tamanho do campo
Início Posição de domínio no segmento
Tipo Tipo de dados do campo
Tipo C Tipo de dados de caractere
Tipo P Tipo de dados decimal compactado
Tipo Z Tipo de dados decimal zoneada
Tipo X Tipo de dados hexadecimais
Tipo H Meia palavra dados binários tipo
Tipo F Texto Completo tipo de dados binários

Program Specification Block (PSB)

Os princípios básicos do PSB estão indicados abaixo:

  • O banco de dados tem uma única estrutura física definida pela DBD mas a programas de aplicação que o processo pode ter opiniões diferentes do banco de dados. Esses pontos de vista são chamados aplicação estrutura de dados e estão definidos no PSB.

  • Nenhum programa pode usar mais de um PSB em uma única execução.

  • Programas de Aplicação têm seu próprio PSB e é comum que programas aplicativos que possuem banco de dados semelhante as necessidades de processamento para compartilhar um PSB.

  • PSB consiste de um ou mais blocos de controle chamado Program Communication Blocks (PCBs). O PSB contém um PCB em cada DL/I base de dados do programa aplicativo irá acessar. Vamos discutir mais sobre PCB nos próximos módulos.

  • PSBGEN deve ser realizada para criar um PSB para o programa.

PSBGEN

PSBGEN é conhecido como programa Bloco Especificação gerador. O exemplo a seguir cria um PSB usando PSBGEN:

PRINT   NOGEN
PCB     TYPE=DB,DBDNAME=LIBRARY,KEYLEN=10,PROCOPT=LS
SENSEG  NAME=LIBSEG
SENSEG  NAME=BOOKSEG,PARENT=LIBSEG
SENSEG  NAME=MAGSEG,PARENT=LIBSEG
PSBGEN  PSBNAME=LIBPSB,LANG=COBOL
END

Vamos entender os termos usados no acima DBDGEN:

  • O primeiro macro declaração é a Program Communication Blocks (PCBs). que descreve o tipo de banco de dados, Nome, Key-Length , e opção de processamento.

  • DBDNAME parâmetro no PCB macro especifica o nome da DBD. KEYLEN especifica o comprimento da maior chave concatenada. O programa pode processar no banco de dados. PROCOPT parâmetro especifica o programa, opções de processamento. Por exemplo, LS significa apenas operações de carga.

  • SENSEG segmento é conhecido como nível de sensibilidade. Ela define o programa do acesso a partes do banco de dados e ele é identificado no nível do segmento. O programa tem acesso a todos os campos no âmbito dos segmentos para os quais ele é sensível. Um programa também pode ter domínio de nível de sensibilidade. No presente, podemos definir um segmento nome e o nome do parent do segmento.

  • A última declaração é macro PCBGEN. PSBGEN é a última declaração dizendo não há mais declarações para o processo. PSBNAME define o nome dado à saída PSB módulo. O LANG parâmetro especifica o idioma em que o programa está escrito, por exemplo, EM COBOL.

Access Control Block (ACB)

Abaixo estão listados os pontos a nota sobre o controle de acesso blocos.

  • Access Control Blocks de um programa aplicativo combina a Base de Dados Descritor e Especificação do Programa bloco em um formato executável.

  • ACBGEN é conhecido como Controle de Acesso bloqueia o gerador. Ele é usado para gerar ACBs.

  • Para programas on-line, precisamos de pré-compilação ACBs. Daí a ACBGEN utilitário é executado antes de executar o programa aplicativo.

  • Para programas de lote, o ACBs podem ser geradas em tempo de execução.

Advertisements