Mit der Funktion SUSY kann sich der DAMP-Anwender folgende Informationen ausgeben lassen:
über den BS2000-Nucleus (Control Program, CP)
über alle Subsysteme, die mit DSSM geladen wurden
über alle geladenen Benutzerprogramm-Kontexte
Das Control Program und die Benutzerprogramm-Kontexte erhalten von DAMP Pseudo-Subsystemnamen. Das Control Program erhält den Subsystemnamen 'CP' und alle Benutzer-Kontexte den Subsystemnamen 'USERPROG'. Gibt es mehrere geladene Benutzer-Kontexte in einer Task, so ist über eine von DAMP intern vergebene 'USERPROG'- Versionsnummer CTXNRxxx ('xxx': laufende Nr. 001, 002, ...) die Eindeutigkeit der Subsystembezeichnung gewährleistet.
In Userdumps sind Informationen über folgende Subsysteme enthalten:
alle geladenen Benutzer-Kontexte,
alle an die Task angeschlossenen nicht privilegierten Subsysteme.
In Areadumps fehlen diese Informationen in der Regel.
Bei Systemdumps, SLEDs, SNAPs und beim aktiven System werden Informationen über folgende Subsysteme ausgegeben:
Control Program
alle geladenen privilegierten und nicht privilegierten Subsysteme
Der Aufruf lautet:
SHOW-EDITED-INFORMATION INFORMATION=*SUBSYSTEM-INFORMATION, WINDOW=<w>
Zum Layout des erzeugten Fensters und zur Erläuterung der Felder siehe "Informationen über Subsysteme ausgeben (Spezialfenster SUSY)".
Im SUSY-Fenster kann mit „Blättern in einem Diagnosefenster" (Diagnosefenster verändern).
/+, ++, / -, --, +n und -n geblättert werden. Näheres hierzu sieheENTRY-Namen werden im SUSY-Fenster nicht unterstützt.
Die Kopfzeilen des SUSY-Fensters
In den Kopfzeilen des SUSY-Fensters befinden sich mehrere Eingabefelder, in die Sie die auszugebenden Subsysteme, Holder-Tasks oder CSECTs eintragen können.
Bild 45: Die Kopfzeilen des SUSY-Fensters
Eingabemöglichkeiten in die Kopfzeilen des SUSY-Fensters
Es ist eine kombinierte Eingabe in die verschiedenen Felder möglich, d.h. die in vorhergehenden Arbeitsschritten erfolgten und immer noch angezeigten Einträge in die Eingabefelder behalten ihre Gültigkeit und zusätzlich können neue Einträge vorgenommen werden.
- Feld Subsystem
Wird in kein anderes Feld etwas eingegeben, so erhält man die Liste der CSECTs dieses Subsystems.
Die Eingabe von *USER entspricht der Eingabe von USERPROG.
Wird zusätzlich ein CSECT-Name oder eine Adresse eingegeben, so wird ausschließlich danach in dem angegebenen Subsystem gesucht.
Wird Subsystem=*ALL und z.B. ein CSECT-Name eingegeben, so wird dieser in allen Subsystemen gesucht.
Wird nur Subsystem=*ALL eingegeben, so wird auf die Subsystem-Liste umgeschaltet, wobei ein eventueller Eintrag im Feld „Holder-Task“ einschränkend berücksichtigt wird.
Durch Markieren des Subsystem-Namens in einer der Ausgabezeilen wird die entsprechende CSECT-Liste ausgegeben.
Die Kontext-Namen werden im Übersichtsfenster alternativ zu den sonstigen Informationen über die Subsysteme ausgegeben. Dazu muss man entweder die Version eines Subsystems markieren oder „CTX“ im Modusfeld eingeben. Feld Version
In dieses Feld kann die Version des gewünschten Subsystems eingegeben werden.
Feld Holder-Task
Tragen Sie in das Feld „Holder-Task“ eine TID ein, so wird die Liste der Subsysteme auf diejenigen verkürzt, deren Holder-Task mit der angegebenen TID übereinstimmt. Den gleichen Effekt erreicht man durch Markieren der unter „Holder“ angeführten TID in einer der Ausgabe-Zeilen.
Gleichzeitig wird versucht, die aktive Task zu wechseln (die mit der angegebenen TID wird ggf. aktiviert). Ein Nebeneffekt kann dann das Erscheinen oder Verschwinden eines Benutzerprogramms am Ende der Subsystemliste werden.
Die ursprüngliche Übersicht erscheint wieder, wenn in dieses Feld *ALL oder in das Feld „Modus“ SSA eingetragen wird.Feld Csect-Name
Wird in das Feld ein CSECT-Name eingetragen, so wechselt das Format, und es wird eine Liste aller Subsysteme ausgegeben, in denen diese CSECT vorkommt.
Die Subsystemliste erhält man zurück, wenn man in das Feld „Subsystem“ *ALL einträgt.
Diese Funktion ist auch für Module des CP erlaubt, etwa um sich deren Identifikationsfeld (ETPND) ausgeben zu lassen.
Feld Address
In das Feld „Address“ können Sie eine Adresse eintragen, die lokalisiert, d.h. in Modul + Distanz umgerechnet werden soll. Die Ausgabe hat das Format der CSECT-Liste und enthält alle Module, in denen diese Adresse liegen könnte.
Feld Modus
Dieses Feld ist ein kombiniertes Ein-/Ausgabefeld und hat folgende Bedeutung:
SSA Eine Liste aller Subsysteme wird ausgegeben. SSC Es werden die mit der aktuellen Task verbundenen Subsysteme angezeigt. SSH Eine Liste aller Subsysteme, deren Holder-Task mit der angegebenen TID übereinstimmt, wird ausgegeben (nur Ausgabefeld). CTX Für alle Subsysteme wird der Kontext-Name ausgegeben. INF CTX wird rückgängig gemacht.
CS2
Das Layout der CSECT-Liste wird umgeschaltet. Statt des ETPND wird für jede CSECT der PMode und das HSI-Byte ausgegeben. Dieser Modus wird nur für Diagnoseobjekte von x86-Servern unterstützt.
CS1 oder CSE CS2 wird rückgängig gemacht. EDT Die den aktuellen Einstellungen des SUSY-Fensters entsprechenden Informationen werden in der gesamten Länge in den aktuellen EDT-Bereich ausgegeben.
LST Die gesamten Subsystem- und CSECT-Informationen des Objekts werden in den aktuellen EDT-Bereich ausgegeben.
Aktuelle Task ist (im SLED oder SNAP) diejenige Task, die vom Diagnostiker zuletzt ausgewählt wurde (durch Markierung im Fenster W2 oder durch explizite Eingabe einer TID oder TSN etc.).
Layout der Subsystem-Liste
Bild 46: Übersicht über Subsysteme
Die einzelnen Spalten der ausgegebenen Subsystem-Liste im Bild 46 haben folgende Bedeutung:
Überschrift Subsystem
Name des Subsystems.
Wird in dieser Spalte ein Feld markiert, schaltet die Ausgabe auf das Layout der CSECT-Liste für dieses Subsystem um.Überschrift Vers
Version des Subsystems.
Wird in dieser Spalte ein Feld markiert, wird auf die Ausgabe des Kontext-Namens für das markierte Subsystem umgeschaltet.Überschrift Holder
TID der Holder-Task (wenn vorhanden).
Wird in dieser Spalte ein Feld markiert, erscheint eine verkürzte Subsystem-Liste mit allen Subsystemen, die von dieser Task „gehalten“ werden.Überschrift Mem
Speicherbereich, in den das Subsystem geladen wurde. Es wird „SYS“ für Systemspeicher oder „USR“ für Benutzerspeicher ausgegeben.Überschrift SubS-Type
Art des Subsystems.
In dieser Spalte können die Bezeichnungen Nuc, Priv, NPriv, TU, Usr-Ctx, Pool-Ctx und undefined stehen.Überschrift META
Adresse der Metadaten der Zugriffsmethode ANITA.
Wird in dieser Spalte ein Feld markiert und anschließend z.B. auf eine der Tasten - gedrückt, erscheinen in dem gewünschten Fenster die ANITA-Metadaten für dieses Subsystem. Dieser Bereich enthält eine Liste von Ladeinformationen, die für das Subsystem aufgebaut wurden.
Für das Subsystem CP ist dieses Feld leer.
Für Subsysteme, die vor DSSM geladen wurden, gibt es ebenfalls keine Anzeige.- Überschrift First Ad.
Anfangsadresse des Subsystems.
Dieses Feld enthält die niedrigste Adresse der gefundenen CSECTs des Subsystems. Sind keine Ladeinformationen zu dem Subsystem vorhanden, ist die Anfangsadresse nicht versorgt.
Layout der CSECT-Liste
Bild 47: Liste der CSECTs des Subsystems AIDSYSA
Die einzelnen Spalten der CSECT-Liste im Bild 47 haben folgenden Inhalt:
Überschrift Subsystem
enthält den Namen des Subsystems nur dann, wenn CSECTs aus verschiedenen Subsystemen angezeigt werden. Ansonsten ist dieses Feld leer und es gilt der Name des in der Kopfzeile angezeigten Subsystems.Überschrift Address
enthält die Adresse der CSECT oder eine Adresse innerhalb der CSECT. Letzteres ist nur dann der Fall, wenn die Liste durch eine Eingabe im Feld „Address“ erzeugt wurde. Dieses Feld ist markierbar. Wird anschließend z.B. auf eine der Tasten - gedrückt, dann wird das gewählte Fenster auf die markierte Adresse positioniert.Überschrift Module und Reladd
enthält die Adresse aus der Spalte „Address“ modulrelativ umgerechnet.Überschrift Length
enthält die Modul-Länge.Überschrift ETPND-Info
enthält die ETPND-Information mit Modulname, Versionsnummer und Übersetzungsdatum.Die Länge des Moduls kann null sein, wenn es sich um einen Großmodul handelt. Die ETPND-Information kann in System-, User- oder Areadumps fehlen, wenn die zugehörige virtuelle Seite nicht im Diagnoseobjekt enthalten ist, weil der Dumperzeuger nur die referenzierten Coding-Seiten abspeichert.
Im Standard-Fenster können CSECTs aller Subsysteme beim Lokalisieren von Speicherbereichen angegeben werden. Auch die automatische Relativierung von Adressfeldern berücksichtigt die CSECTs aller Subsysteme. Zum Lokalisieren von CSECTs ist SUSY also nicht mehr erforderlich. Dies gilt jedoch nur, solange die CSECT-Namen im Bereich aller Subsysteme eindeutig sind. Ist die Eindeutigkeit nicht gegeben (z.B. in den Subsystemen NKVT, NKVD oder bei Koexistenz verschiedener Versionen des gleichen Subsystems), wird bei diesem Verfahren stets der erste Treffer angezeigt. Eine gezielte Lokalisierung ist dann nur über SUSY oder die Anweisung SEARCH-IN-SUBSYSTEM (siehe "SEARCH-IN-SUBSYSTEM CSECT-Suche in einem Subsystem") möglich.
Überschrift PMODE/HSI
enthält bei Diagnoseobjekten von x86-Servern Informationen über den Prozessormodus, in dem das Coding abläuft, sowie die Art der Codegenerierung. Diese Ausgabe erfolgt beim Modus CS2.Die möglichen Ausgaben haben folgende Bedeutung:
PMODE
Bedeutung
CISC
emuliert im /390-Modus
X86
native auf einem x86-Server
HSI
Bedeutung
R
mixed binary_no
U
mixed binary_yes
00
BLS-Information ist nicht verfügbar bzw. obsolet.
Bei CISC-Coding wird generell dieser Wert angezeigt.
In den Übersichts-Fenstern von SUSY kann man mit den üblichen Tasten bzw. Eingaben blättern. Dabei werden die Blätterfunktionen +/
, ++, - / , --, +n, -n unterstützt.Es gibt Klasse-5-Subsysteme, die in der Holder-Task und in den angeschlossenen Nutzer-Tasks jeweils einen anderen Adressraumstreifen belegen. Die von DAMP zur Lokalisierung benutzten Informationen enthalten dabei jeweils die Adressen, die in einer Nutzer-Task gültig sind. In der Holder-Task findet man jedoch an diesen Stellen nicht die erwarteten Module.