IMS DB - Steuerblöcke


Advertisements

IMS Control Blocks definieren die Struktur der IMS-Datenbank und eines Programms Zugang zu ihnen. Die folgende Grafik zeigt den Aufbau des IMS-Steuerblöcke.

Control BLOCK

DL / I nutzt die folgenden drei Arten von Control Blocks:

  • Datenbank Descriptor (DBD)
  • ProgrammSpezifikation Block (PSB)
  • Access Control Block (ACB)

Datenbank Descriptor (DBD)

Punkte zu beachten: :

  • DBD beschreibt die vollständige physische Struktur der Datenbank, einmal alle Segmente definiert wurden.

  • Während der Installation einer DL / I-Datenbank, eine DBD muss erstellt wie es erforderlich ist, um die IMS-Datenbank zugriff.

  • Anwendungen können verschiedene Ansichten der DBD verwenden. Sie sind Anwendungsdatenstrukturen genannt und sie in der Programmspezifikation Sperren festgelegt sind.

  • Der Datenbankadministrator erstellt ein DBD durch Codierung DBDGEN Steueranweisungen.

DBDGEN

DBDGEN ist eine Datenbank Descriptor Generator. Erstellen von Steuerblöcken liegt in der Verantwortung des Datenbankadministrators. Alle Lademodule sind im IMS Bibliothek gespeichert. Assembler Sprache makro- erklärungen werden verwendet, um Steuerblöcke erstellen. Da unten ist eine Beispielcode, wie man erstellen ein DBD Verwendung DBDGEN Steueranweisungen:

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

Lassen sie uns verstehen die in der obigen DBDGEN verwendeten Begriffe :

  • Wenn Sie Ausführen die oben Steueranweisungen in JCL, erstellt es eine physikalische Struktur wo BIBLIOTHEK ist die Root-Segment und BÜCHER und magzines sind seine Kind Segmente.

  • Der erste DBD Makro Erklärungen identifiziert die Datenbank. Hier müssen wir zu erwähnen den Namen und die ACCESS, die durch DL/I verwendet wird, zu Zugriff auf diese Datenbank.

  • Die zweite DATASET Makro Erklärungen identifiziert die Datei, der die Datenbank enthält.

  • Die Segmenttypen werden mit dem SEGM Makro-Anweisung definiert. Wir müssen die PARENT dieses Segments angeben. Wenn es ein Root-Segment ist, dann erwähnen PARENT = 0 ist.

In der folgenden Tabelle zeigt Parameter verwendet im FIELD Makro-Anweisung :

Parameters Beschreibung
Name Name des Feldes, in der Regel 1 bis 8 Zeichen lang sein
Bytes Länge des Feldes
Start Position des Feldes im Segment
Typ Datentyp des Feldes
Typ C Character-Datentyp
Typ P Lunch Dezimal-Datentyp
Typ Z zoned Dezimal-Datentyp
Typ X Hexadezimal Datentyp
Typ H Halbwort binärer Datentyp
Typ F VollWort binärer Datentyp

ProgrammSpezifikation Block (PSB)

Die Grundlagen der PSB werden wie unten angegeben:

  • Eine Datenbank hat einzige physischen Struktur definiert durch ein DBD aber den Anwendungs programmen, dass kann verarbeiten verschiedene Ansichten der Datenbank . Diese Ansichten werden namens als Anwendungs daten struktur und sind definiert in der PSB.

  • Kein Programm kann mehr als ein PSB in einer einzigen Ausführung zu verwenden.

  • Anwendungsprogramme haben ihre eigenen PSB und es ist üblich, dass Anwendungsprogramme, dass haben ähnliche Datenbankverarbeitungsanforderungen einen PSB zu teilen.

  • PSB besteht aus einem oder mehr Steuerblöcke genannt werden die Kommunikationsbausteine (PCBs). Die PSB enthält eine PCB für jedes DL / I-Datenbank das Anwendungsprogramm zugreifen. Wir werden diskutieren, mehr über PCB in den kommenden Module.

  • PSBGEN durchgeführt werden müssen, um eine PSB für das Programm zu erstellen.

PSBGEN

PSBGEN ist als Programmspezifikations Block-Generator bekannt. Im folgenden Beispiel erstellt ein PSB verwendung 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

Lassen Sie uns die in der obigen DBDGEN verwendeten Begriffe verstehen:

  • Das erste Makro-Anweisung ist die Programm-Kommunikation Baustein (PCB), dass beschreibt den Datenbanktyp, Name Key-Länge und Verarbeitungsoption.

  • DBDNAME Parameter auf der PCB Makro Gibt an den Namen des DBD. KEYLEN gibt die Länge des längsten verketteten Taste. Das Programm kann in der Datenbank zu bearbeiten. PROCOPT Parameter gibt die Verarbeitungsoptionen des Programms. Zum Beispiel LS bedeutet nur LOAD Operationen.

  • Senseg als Segmentebene Empfindlichkeit bekannt. Es definiert das Programm Zugriff auf Teile der Datenbank und auf Segmentebene identifiziert wird. Das Programm greift auf alle Felder innerhalb der Segmente, auf die sie empfindlich ist. Ein Programm kann auch auf Feldebene Empfindlichkeit. Dabei definieren wir einen Segmentnamen und das übergeordnete Name des Segments.

  • Die letzte Makroanweisung ist PCBGEN. PSBGEN ist die letzte Anweisung zu sagen gibt es keine Aussagen zu verarbeiten. PSBNAME definiert den Namen an den Ausgang PSB-Modul gegeben. Der Parameter LANG gibt die Sprache an, in der das Anwendungsprogramm geschrieben wird, zB COBOL.

Access Control Block (ACB)

Im folgenden sind die Punkte, über Zutrittskontrollblöcke beachten Sie:

  • Access Control Blocks für ein Anwendungsprogramm kombiniert die Datenbank Descriptor und die Programm-Spezifikation-Block in eine ausführbare Form.

  • ACBGEN ist bekannt als Access Control Blocks Generator . Es ist verwendung zur ACBs zu erzeugen.

  • Für die Online-Programme,wir müssen vor Gebaut ACBs. Daher die ACBGEN Dienstprogramm wird vor der Ausführung des Anwendungsprogramms ausgeführt wird.

  • Für Batch-Programmen, ACBs kann zur Ausführungszeit zu erzeugen allzu.

Advertisements