Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Speicherinhalte sicherstellen

&pagelevel(3)&pagelevel

Mit einem Speicherabzug (Dump) stellt man Inhalte, z.B. aus Registern, Realspeichern, Adressräumen oder Dateien, zum Zeitpunkt eines tatsächlichen oder vermuteten Fehlverhaltens sicher. Ausgelöst wird der Dump entweder automatisch durch eine Fehlererkennungsinstanz des Betriebssystems bzw. des laufenden Programms oder durch das Eingeben eines entsprechenden Kommandos am Terminal bzw. an der Konsole. Abhängig von der Bedeutung des aufgetretenen Fehlers unterscheidet man in BS2000

  • den Gesamtdump unter Beendigung des Betriebssystems und

  • den Teildump ohne Beendigung des Betriebssystems.

Sind Ursache und Wirkung des Fehlers nicht eingrenzbar und ist ein unverzichtbarer Teil des Betriebssystems beeinträchtigt, müssen für die Diagnose sämtliche Haupt- und Hintergrundspeicherbereiche von BS2000 sichergestellt werden. Einen solchen Gesamtdump erstellt das Programm SLED (Self Loading Emergency Dump, siehe Kapitel „SLED-Dump"). SLED arbeitet unabhängig von BS2000.
Wurde der Gesamtdump erstellt, dann wird das Betriebssystem neu geladen. Bei entsprechender Vorgabe erfolgen das Sicherstellen des Speicherinhalts und das Neustarten des Betriebssystems vollautomatisch.

Lässt sich der Fehler auf eine Task eingrenzen, braucht nur der von der Task belegte Teil des Speichers sichergestellt zu werden. Ein Teildump umfasst daher im Wesentlichen nur den Benutzeradressraum der Fehlertask, wenn der Fehler im Benutzerprogramm aufgetreten ist. Ist andererseits der Fehler in einer Funktion des Betriebssystems aufgetreten, ohne sich jedoch auf andere Tasks auszuwirken, werden auch Bereiche des Betriebssystemadressraums sichergestellt.

Während die fehlerhafte Task nach der Erstellung eines solchen Dumps von der Fehlerbehandlungsroutine meist beendet wird, laufen das Betriebssystem und alle anderen Tasks während der Dumperstellung und auch anschließend weiter.

In BS2000 lassen sich Teildumps (System-, Area- oder Userdumps) mit dem Makro CDUMP2 erzeugen. CDUMP2 (siehe Kapitel „CDUMP Area-, User- oder Systemdump ausgeben" (CDUMP Area-, User- oder Systemdump ausgeben)) arbeitet asynchron, d.h. simultan zu anderen Tasks unter der Kontrolle von BS2000. Der Umfang des mit CDUMP2 erzeugten Teildumps ist abhängig zum einen von der Operandenangabe und zum anderen von der Privilegierung der aufrufenden Task.

Eine besondere Form des Teildumps ist der SNAP-Dump (siehe Kapitel „SNAP-Dump"). SNAP stellt den Klasse-1- und Klasse-3-Speicher des Betriebssystems und die Namens- und Einsprungsliste aller Betriebssystemmodule (EOLDTAB) sicher.

SNAP wird vom Betriebssystem aus dem Zustand TPR oder SIH aufgerufen. Das geschieht im Allgemeinen dann, wenn sich ein irregulärer Betriebssystemzustand einstellt, der jedoch nicht so schwer wiegend ist, dass der Systemlauf beendet werden muss. Nach dem Aufruf hält SNAP BS2000 automatisch für maximal 24 Sekunden an, erstellt unabhängig von BS2000 den Dump und setzt das Betriebssystem anschließend wieder in Gang.