Standardmäßig wird mit DAMP die Bibliothek SYSSMB.DAMP.
<ver> ausgeliefert und in die Bibliothek $TSOS.SYSSMB.DAMP
eingemischt. Sie enthält die von DAMP benötigten und weitere häufig benutzte DSECTs. Eine Übersicht über die DSECTs erhalten Sie im Abschnitt „Liste der DSECTs aus den Standard-Symboldateien".
Für Spezialdiagnosen können zusätzlich Symbolelemente generiert, erweitert oder geändert und anschließend für die Diagnose zugewiesen werden, zum Beispiel
DSECT-Tabellen für DCM
DSECTs für Datenstrukturen, die in einem TU-Programm verwendet werden (zur Auswertung von Userdumps dieses Programms).
Beim Öffnen des Diagnoseobjekts wird von DAMP automatisch das entsprechende BS2000-Systemversions-Symbolelement zugewiesen.
Dieser Automatismus lässt sich ausschalten, indem bei der Anweisung OPEN-DIAGNOSIS-OBJECT
explizit ein Symbolelement angegeben wird, das für die Verarbeitung des zu öffnenden Objekts herangezogen wird. Es ist jedoch zu beachten, dass die BS2000-Standard-Symbole in diesem Element enthalten sein müssen.
Weitere Symbolelemente können mit der Anweisung ADD-SYMBOLS
zugewiesen werden. Bei Angabe einer DSECT werden dann alle zugewiesenen Symbolelemente durchsucht, wobei mit dem zuletzt eingegebenen Symbolelement begonnen wird.
Beim Wechsel des Objekts werden alle Zuweisungen zurückgesetzt.
Private Symbolelemente erzeugen
Ein privates Symbolelement erzeugen Sie folgendermaßen:
Assemblieren der zusätzlichen oder geänderten DSECTs mit
TEST-SUPPORT=*AID
bzw. mit*COMOPT ISD
(nach der letzten DSECT sollte eine Dummy-CSECT in den Source aufgenommen werden, da der Assembler ansonsten eine falsche Länge für die letzte DSECT berechnet).Bei SPL-Models sollte für den Compiler die Option
*COMOPT SYMTEST=ALL
angegeben werden.Ist bereits ein Modul mit Symbolinformationen vorhanden, muss nicht neu übersetzt werden.
C-Strukturen müssen mit
TEST-SUPPORT=YES
übersetzt werden. Für jedes zu generierende Symbol (=Typ) muss ein Pointer definiert werden, da der C-Compiler nur den Namen der Variablen ablegt. Strukturen und Arrays werden auf diese Weise unterstützt. Die Pointer sollten in der gleichen Reihenfolge wie die Strukturen, auf die sie zeigen, definiert werden. Nur so können die Bezüge zwischen den Strukturen und den Pointern ausgewertet werden, zudem wird so Speicher gespart. DAMP unterscheidet beim Suchen nach einem Symbol nicht zwischen Groß- und Kleinschreibung, sodass sich die Namen von Hauptstrukturen (DSECTs) nicht nur durch die Groß- und Kleinschreibung unterscheiden dürfen. Deshalb prüft der Symbolgenerator die generierten Hauptstrukturen auf Eindeutigkeit in diesem Sinn ab, behält die jeweils erste und eliminiert die nächsten.Nach dem Aufruf von
/START-DAMP-SYMBOL-GENERATOR
wird im Dialog abgefragt, ob Symbole generiert werden sollen (Eingabe: „g“) oder ob Symbolinformationen ausgegeben werden sollen (Eingabe: „i“). Bei Eingabe von „g“ lautet die nächste Abfrage, welches Modul aus welcher Bibliothek die Symbolinformationen enthält.
Diese Symbolinformationen werden dann als Element vom Typ X einer PLAM-Bibliothek abgelegt. Der Name der Bibliothek und des Elements werden im Dialog abgefragt.Die Bibliothek für Standard-BS2000-Symbole hat den festen Namen
$TSOS.SYSSMB.DAMP
. Der Elementname ist gleich dem Namen des Produkts, auf das sich die Symbole beziehen, ebenso geht die Elementversion aus der Version des Produkts hervor (z.B.: BS2000/210 für BS2000 V21.0A).Ist eine Symbolbibliothek gleichen Namens unter der aktiven Kennung bereits vorhanden, können die neu übersetzten DSECTs in die bestehende Bibliothek eingefügt werden. Ist ein Symbolelement gleichen Namens in der angegebenen Bibliothek bereits vorhanden, kann das Element wahlweise ersetzt werden oder durch die neuen Informationen ergänzt werden.
Ggf. Kopieren der Symbolbibliothek oder des Symbolelements unter die gewünschte Benutzerkennung oder in die gewünschte Bibliothek und Einstellen der Benutzeroption SYSSMB (siehe "Modifikationen durch den Benutzer (Spezialfenster OPTIONS)").
Anhand zweier Beispiele soll die Verwendung von /START-DAMP-SYMBOL-GENERATOR
erläutert werden.
Beispiel 1
|
Beispiel 2
Mit /START-DAMP-SYMBOL-GENERATOR
kann man sich auch die in Symbolelementen abgelegten DSECTs, Strukturen und Symbole auf dem Bildschirm oder in einer Datei auflisten lassen.
|