crash(1M) crash(1M)
NAME
crash - Systemspeicherabzüge überprüfen
SYNTAX
/usr/sbin/crash [-d dumpfile] [-n namelist] [-w outputfile]
BESCHREIBUNG
Das Kommando crash dient zum Prüfen des Systemspeicherabzugs eines
laufenden oder abgestürzten Systems. Dazu werden Steuerstrukturen,
Tabellen und andere Informationen formatiert und ausgegeben. Das Kom-
mando crash hat die Argumente dumpfile, namelist und outputfile in der
Kommandozeile.
dumpfile ist die Datei, die den Systemspeicherabzug enthält. Standard-
mäßig ist als dumpfile die Datei /dev/mem festgelegt.
Die Textdatei namelist enthält die Symboltabellendaten, die für den
symbolischen Zugriff auf den zu prüfenden Speicherabzug benötigt wer-
den. Standardmäßig ist als namelist die Datei /stand/unix festgelegt.
Soll ein Systemspeicherabzug eines anderen Rechners geprüft werden, so
muß die entsprechende Textdatei von diesem Rechner kopiert werden.
Sobald das Kommando crash aufgerufen wird, wird eine Sitzung akti-
viert. Die Ausgabe einer crash-Sitzung wird in die Datei outputfile
umgeleitet. Standardmäßig ist als outputfile die Standardausgabe fest-
gelegt.
Die Eingabe während einer crash-Sitzung hat folgende Form:
function [argument ...]
Dabei ist function eine der crash-Funktionen, die weiter unten unter
der Überschrift FUNKTIONEN beschrieben werden, und arguments steht für
zusätzliche Daten, die angeben, welche Elemente des Systemspeicherab-
zugs ausgegeben werden.
Bei laufenden Systemen ist der Standardwert für prozeßbezogene Ele-
mente der aktuelle Prozeß. Bei abgestürzten Systemen ist es der Pro-
zeß, der zur Zeit des Absturzes aktiv war. Wird ein Speicherabzug
eines Tabelleninhalts erstellt, so werden standardmäßig alle aktiven
Tabelleneinträge berücksichtigt.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
OPTIONEN
Für die crash-Funktionen können die folgenden Optionen angegeben wer-
den, wo immmer sie semantisch gültig sind.
-e Zeigt jeden Eintrag in einer Tabelle an.
-f Zeigt die vollständige Struktur an.
-p Interpretiert alle Adreßargumente in der Kommandozeile als phy-
sische Adressen. Handelt es sich nicht um physische Adressen,
sind die Ergebnisse nicht konsistent.
-s process
Gibt eine andere Prozeßposition als den Standard an.
-w file
Leitet die Ausgabe einer Funktion um in die Datei file.
Die Funktionen mode, defproc und redirect entsprechen den Funktions-
Optionen -p, -s und -w. Mit der Funktion mode kann die Adreßumwandlung
für alle später eingegebenen Funktionen auf physisch bzw. virtuell
gesetzt werden; defproc definiert den Wert des Prozeßarguments für die
nachfolgenden Funktionen; mit redirect werden alle späteren Ausgaben
umgeleitet.
Die Ausgabe von crash-Funktionen kann folgendermaßen an ein anderes
Programm umgeleitet werden:
function [argument ...] ! shellcommand
Beispielsweise schreibt
mount ! grep rw
alle Einträge einer mount-Tabelle mit dem Flag rw auf die Standardaus-
gabe. Die Umleitungs-Option (-w) kann hier nicht verwendet werden.
Je nach Kontext der Funktion wird für numerische Argumente eine
bestimmte Basis vorausgesetzt. Zähler gelten als dezimal, Adressen als
hexadezimal. Tabellenpositionsargumente, die größer sind als die Funk-
tionstabelle, werden als hexadezimale Adressen interpretiert; Tabel-
lenpositionsargumente, die kleiner sind als die Funktionstabelle, wer-
den als dezimale Positionen innerhalb der Tabelle angesehen. Bei allen
Argumenten darf die Standard-Basis umdefiniert werden. Die C-Konventi-
onen zum Bezeichnen von Zahlenbasen werden eingehalten. Eine Zahl, die
normalerweise als Dezimalzahl interpretiert wird, gilt als Hexadezi-
malzahl, wenn ihr 0x vorausgeht, und als Oktalzahl, wenn ihr 0 voraus-
geht. Zum Umstellen auf Dezimalzahlen dient 0d zum Umstellen auf
Binärzahlen dient 0b.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
Anstelle einer Funktion kann auch jede eindeutig identifizierbare
Teilzeichenkette davon (vom Anfang des Namens ausgehend) eingegeben
werden. Übliche Abkürzungen wie etwa p für proc bleiben gültig.
Bei vielen Funktionen kann ein und dasselbe Argument auf viele ver-
schiedene Arten angegeben werden. Bei Anforderungen von Tabellendaten
kann entweder eine Tabelleneintragsnummer, eine physische Adresse,
eine virtuelle Adresse, ein Symbol, ein Bereich oder ein Ausdruck
angegeben werden. Ein Bereich von Positionsnummern kann in der Form
a-b angegeben werden, wobei a und b Dezimalzahlen sind. Ein Ausdruck
besteht aus zwei Operanden und einem Operator. Ein Operand kann eine
Adresse, ein Symbol oder eine Zahl sein; der Operator ist eines der
Zeichen +, -, *, /, & oder |. Ist der Operand eine Zahl, aber keine
Dezimalzahl, so sollte ihm ein Präfix vorangehen, der die betreffende
Darstellungsart angibt (0 für Oktal-, 0x für Hexadezimal- und 0b für
Binärzahlen). Ein Ausdruck muß immer in Klammern stehen. Andere Funk-
tionen akzeptieren diese Argumentformen, soweit sinnvoll.
Zwei Abkürzungen für Argumente von crash-Funktionen werden immer
benutzt. Zu beiden können Daten in unterschiedlicher Form eingegeben
werden. Die Langform dieser Kürzel lautet:
tableentry = tableentry | address | symbol | range | expression
startaddr = address | symbol | expression
FUNKTIONEN
? [-w file]
Listet verfügbare Funktionen auf.
!command
Ruft eine Sub-Shell auf und führt das Kommando command aus.
as [-e] [-f] [-w file] [proc ...]
Gibt Informationen über Prozeßsegmente aus.
async [-f] [-w file]
Gibt die Liste der Datenstrukturen für asynchrone Ein-/Ausgabean-
forderungen aus.
autoconf [-f] [-w file]
Gibt Informationen über die Hardware-Komponenten eines Systems
aus. Diese Funktion wird nur beim Prüfen eines Systemspeicherab-
zugs unterstützt.
base [-w file] number ...
Gibt die Zahl number in binärer, oktaler, dezimaler oder hexade-
zimaler Darstellung aus. Eine Zahl mit einer anderen Basis als 10
sollte mit einem Präfix versehen sein, das die Basis wie folgt
angibt: 0x, sechzehn; 0, acht; 0b, zwei.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
buffer [-w file] [-format] bufferslot
buffer [-w file] [-format] [-p] startaddr
Abkürzung: b.
Gibt den Inhalt eines Puffers im angegebenen Format aus. Folgende
Formatbezeichnungen werden erkannt: -b, Byte; -c, Zeichen; -d,
dezimal; -x, hexadezimal; -o, oktal; -i, I-Node. Ist kein Format
angegeben, wird das vorhergehende Format verwendet. Am Beginn
einer crash-Sitzung ist standardmäßig das hexadezimale Format
eingestellt.
bufhdr [-f] [-w file] [[-p] tableentry ...]
Abkürzung: buf.
Gibt Kontrollblöcke für den Systempuffer aus. Mit der Option -f
werden unterschiedliche Ausgaben erzeugt, je nachdem, ob es sich
um einen lokalen Puffer oder Puffer eines Remote-Systems mit
RFS-Daten handelt.
bsdso [-w file] [-p] address ...
Gibt die Datenstruktur struct socket für die angegebenen Adressen
aus.
bt [-w file] [-f] [-p tableentry] stackaddress
Zeigt ein an der Adresse stackaddress beginnendes Stackprotokoll
an.
callout [-w file]
Abkürzung: c.
Gibt die callout-Tabelle aus.
class [-w file] [tableentry ...]
Gibt Informationen über Prozeß-Scheduler-Klassen aus.
cpupriv [-w file] [cpunumber]
Gibt die Datenstruktur struct percpu für die angegebene CPU aus.
crawl [-w file] [-s startaddress] [tableentry]
crawl [-w file] [-s startaddress] [#procid]
crawl [-w file] [-s startaddress] [procaddr]
Durchsucht das Stackprotokoll nach möglichen Stackeinträgen und
disassembliert jeweils 4 Befehle um den Absprungpunkt zur näch-
sten Routine. Dabei können die Startadresse, ab der das Stackpro-
tokoll durchsucht werden soll, und der Prozeß angegeben werden.
dbfree [-w file] [class ...]
Gibt die Kontrollblöcke für freie STREAMS-Datenblöcke aus. Wird
eine Klasse (class) eingegeben, so werden nur die Kontrollblöcke
der Datenblöcke ausgegeben, die zu der angegebenen Klasse gehö-
ren.
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
dblock [-e] [-w file] [-c class ...]
dblock [-e] [-w file] [[-p] tableentry ...]
Gibt den Kontrollblock für zugewiesene STREAMS-Datenblöcke aus.
Wird die Option -c zur Angabe einer Klasse benutzt, so werden nur
die Kontrollblöcke der Datenblöcke ausgegeben, die zu der angege-
benen Klasse gehören.
defproc [-w file] [-c]
defproc [-w file] [slot]
Definiert den Wert des Arguments für die Prozeßposition. Dieses
Argument kann auf die aktuelle Positionsnummer (-c) oder die
angegebene Positionsnummer (slot) gesetzt werden. Wird kein Argu-
ment angegeben, so wird der Wert der zuvor gesetzten Positions-
nummer ausgegeben. Beim Beginn einer crash-Sitzung wird für die
Prozeßposition der aktuelle Prozeß definiert.
dis [-w file] [-a] startaddr [count]
dis [-w file] [-a] -c [count]
Disassembliert eine bestimmte Anzahl von Anweisungen, die in
count angegeben wird, wobei bei startaddr begonnen wird. Stan-
dardmäßig wird eine einzige Anweisung disassembliert. Die abso-
lute Option (-a) bewirkt eine nicht-symbolische Disassemblierung.
Mit der Option -c können Sie angeben, daß an der Adresse, an der
eine vorherige Disassemblierung endete, wieder eine Disassemblie-
rung beginnen soll. Dann brauchen Sie startaddr nicht mehr anzu-
geben.
dispq [-w file] [tableentry ...]
Gibt die Warteschlange für die Zuteilerroutine (Scheduler) aus.
ds [-w file] virtualaddress ...
Gibt das Datensymbol aus, das der eingegebenen Adresse am näch-
sten, aber nicht größer ist.
ep [-cStreams] [-wfilename] [-aage]
Auswertung des Profiles des Event Profilers ep(7).
-c Angabe des CLIENTS (zur Zeit nur Streams).
-w Umlekung der Ausgabe in eine Datei filename.
-a Nur ältere Ereignisse als age werden ausgegeben. age kann in
n[h] Stunden
n[m] Minuten
n[s] Sekunden
angegeben werden.
Beispiel: age = 1h oder 30m oder 10s
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
Wenn age ohne Einheit angegeben wird, wird der Wert als Tic
(1/HZ Sek.) interpretiert.
Zuerst wird eine Überschrift mit der Angabe des CLIENTS und dem
Tic-Wert seit Systemboot ausgegeben. Dann wird die crash-Version
und der Modus des Profiles ausgegeben.
Sodann folgt die Auswertung der gespeicherten Informationen. Der
Event Profiler druckt in jeder Zeile zuerst den Schlüssel (key)
des OBJEKTS. Dadurch kann die Ausgabe später mit grep, sed oder
awk leicht weiterverarbeitet werden.
Das erste ausgegebene Ereignis entspricht der Erzeugung des
OBJEKTS [epcreate()]. Alle weiteren Ereignisse wurden durch Auf-
rufe von eppush() gespeichert.
In der zweiten Spalte werden die Tics seit Systemboot ausgegeben.
Die dritte Spalte enthält die Trace-IDs und die Namen der Trace-
punkte, falls crash diese kennt.
Die nächsten Spalten enthalten entweder die Aufrufverkettung oder
die Auswertung von trace-spezifische Daten.
epcallers [-cStreams] -scallers
Bestimmt, wie viele Aufrufer in der Aufrufverkettung gespeichert
werden sollen.
-c Angabe des CLIENTS (zur Zeit nur Streams).
-s Anzahl der Aufrufer [0,...,10]
Normalerweise speichert der Event Profiler fünf Aufrufer. Es mag
jedoch Fälle geben, in denen es reicht, weniger Aufrufer zu spei-
chern. Da die Bestimmung der Aufrufer für MIPS sehr aufwendig
ist, sollte die Anzahl der Aufrufer möglichst minimiert werden,
um das Ablaufverhalten nicht zu sehr zu verfälschen.
epcleanup [-cStreams]
Alle Speicher für den CLIENT wieder freigeben.
-c Angabe des CLIENTS (zur Zeit nur Streams).
epinit -cStreams -m{PROFILING | MFREE} [-tmask] [-p] [-oobjects]
[-eevents]
Event Profiler ep(7) initialisieren und Speicher für das Profile
reservieren.
-c Angabe des CLIENTS (zur Zeit nur Streams).
-m Modus: Entweder PROFILING (Geschichte aller erzeugten
OBJEKTE) oder MFREE (Entdeckung mehrfacher Freigaben).
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
-t Bitmaske, in der die Bits für alle aktiven Tracepunkte
gesetzt sind.
-p Es soll ein PANIC ausgelöst werden, wenn die konfigurierte
Anzahl der OBJEKTE erreicht ist.
-o Max. Anzahl von OBJEKTEN, für die gleichzeitig Informationen
gespeichert werden können [4000,...,40000].
-e Max. Anzahl von Ereignissen, die gleichzeitig gespeichert
werden können [10000,...,100000].
Wenn man einen Speicherfresser finden will, kann es sehr nützlich
sein, die Option -p zuverwenden. Wenn man nämlich wartet, bis dem
System der Speicher ausgegangen ist, ist es meist nicht mehr mög-
lich, einen Dump von dem System zu ziehen. Wenn jedoch der Event
Profiler einen PANIC auslöst, sobald die Anzahl der OBJEKTE
erreicht ist, sind normalerweise schon genügend Ereignisse im
Event Profiler gespeichert, um den Speicherfresser zu finden. Der
Dump kann dann nachträglich mittels crash ausgewertet werden.
Wenn keine optionalen Parameter angegeben wurden, verwendet
epinit vernünftige Standardwerte, die vom CLIENT und vom Modus
abhängen. Das Profile braucht dann ungefähr 4 MB Hauptspeicher.
epstart [-cStreams]
Event Profiler ep(7) für den CLIENT starten: Das Speichern der
Ereignisse beginnt.
-c Angabe des CLIENTS (zur Zeit nur Streams).
epstop [-cStreams]
Event Profiler ep(7) für den CLIENT wieder anhalten: Das Spei-
chern von Erzeugungs- und weiteren Ereignissen wird eingestellt.
Das Bearbeiten der Freigabe-Ereignisse wird weiterhin ausgeführt,
da sonst vermeintliche Speicherfresser angezeigt würden.
Das Profile kann dann mit dem crash-Kommando ep ausgewertet wer-
den, ohne Gefahr zu laufen, daß sich die auszuwertenden Daten
während der Auswertung dauernd ändern.
-c Angabe des CLIENTS (zur Zeit nur Streams).
evactive [-w file] [-f] [eventname]
Gibt alle Ereignis-Warteschlangen aus. Dabei kann die Ausgabe
nach dem Ereignis eventname gefiltert werden.
evmm [-w file]
Gibt die Verwaltungsstrukturen der Ereignis-Speicherverwaltung
aus.
Seite 7 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
file [-e] [-w file] [[-p] tableentry ...]
Abkürzung: f.
Gibt die Dateitabelle aus.
fileof [-w file] inpcbaddr
Sucht nach Prozessen/Dateideskriptoren, welche einen Verweis auf
die struct msgb inpcbaddr haben.
findaddr [-w file] table slot
Druckt die Adresse der Position slot in der Tabelle table. Nur
Tabellen, auf die die Funktion size zugreifen kann, stehen für
findaddr zur Verfügung.
findslot [-w file] virtualaddress ...
Gibt die Tabelle, die Eingabepositionsnummer und den Offset für
die eingegebene Tabelle aus. Nur Tabellen, auf die die Funktion
size zugreifen kann, stehen für findslot zur Verfügung.
fs [-w file] [[-p] tableentry ...]
Gibt die Dateisystemdatentabelle aus.
gdp [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt die Gift-Deskriptor-Protokolltabelle aus. Ein "Gift"
bezeichnet einen Verweis auf einen Remote-Empfangs-Dateideskrip-
tor.
help [-w file] function ...
Gibt eine Beschreibung der eingegebenen Funktion einschließlich
Syntax und Abkürzungen aus.
hrt [-w file]
Gibt alle hochauflösenden Zeitgeber aus.
icmpstat [-w file] [[-p] icmpstataddr ...]
Gibt die ICMP-Statistik (Interface Control Message Protocol) aus.
ifnet [-w file] [-l] [-p] ifnetaddr ...
Gibt die Datenstruktur struct ifnet (Netzwerk-Schnittstellen-
Statistik) für die angegebenen Adressen ifnetaddr aus.
ifstats [-w file] [-l] [-p] ifstatsaddr ...
Gibt die Datenstruktur struct ifstats (Schnittstellen-Statistik)
für die angegebenen Adressen ifstatsaddr aus.
ikdb Schaltet in den ikdb-Emulationsmodus um. Alle danach aufgerufenen
Funktionen entsprechen denen des systemkern-internen Fehlersuch-
programmes ikdb. Abweichungen davon werden hier beschrieben.
Seite 8 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
inode [-e] [-f] [-w file] [[-p] tableentry ...]
Abkürzung: i.
Gibt die I-Node-Tabelle einschließlich Angaben zum Status des
Dateisystems aus.
inpcb [-w file] [-l] [-p] inpcbaddr ...
Gibt die Datenstruktur struct inpcb (Internet-Protokoll-Steuer-
block) für die angegebenen Adressen inpcbaddr aus. Bei der
Option -l werden für die gesamte Liste dieser Datenstrukturen die
Host-Einträge ausgegeben.
ipcs [-w file] [-f] [-m] [-s] [-q]
Gibt Informationen über aktive Einrichtungen zur Interprozeß-
Kommunikation (IPC-Einrichtungen) aus. Durch die Angabe von
Optionen können Sie steuern, über welche Art von IPC-Einrichtun-
gen Informationen ausgegeben werden: (-q) Nachrichten-Warte-
schlangen (message queues), (-s) Semaphore oder (-m) gemeinsam
benutzter Speicher (shared memory).
ipstat [-w file] [[-p] ipstataddr ...]
Gibt den Internet-Protokoll-Status (Datenstruktur struct ipstat)
für die angegebenen Adressen ipstataddr aus.
kfp [-w file] [-s process] [-r]
kfp [-w file] [-s process] [value]
Gibt den Systemkern-Rahmenzeiger (kernel frame pointer, kfp) für
den Anfang eines Stackprotokolls des Systemkerns aus. Der kfp-
Wert kann über das Argument value oder die Reset-Option (-r)
definiert werden. Bei der Option -r geschieht dies über NVRAM
(non-volatile/nicht-flüchtiges RAM). Wird kein Argument angege-
ben, so wird der aktuelle kfp-Wert ausgegeben.
kmafreelists [-w file] [-f]
Gibt die Freilisten für den Kernel-Speicher aus.
kmastat [-w file]
Gibt Statistiken zur Speicherzuweisungsfunktion des Kerns aus.
lck [-e] [-w file] [[-p] tableentry ...]
Abkürzung: l.
Gibt Informationen über Satzsperren aus. Wird die Option -e ver-
wendet oder werden Tabellenadreßargumente durch tableentry ange-
geben, wird die Liste der Satzsperren ausgegeben. Wird kein Argu-
ment eingegeben, so werden Informationen über Sperren in Bezug
auf I-Nodes ausgegeben.
linkblk [-e] [-w file] [[-p] tableentry ...]
Gibt die Tabelle linkblk aus.
Seite 9 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
map [-w file] mapname ...
Gibt die Abbildungsstruktur für den angegebenen Abbildungsnamen
(mapname) aus.
mb2info [-w file] mb2infoaddr
Gibt die MBII-Kontroller-Informations-Datenstruktur struct
mb2ctlrinfo für die angegebene Adresse mb2infoaddr aus. Diese
Funktion wird nur für die RM600-xxx unterstützt.
mbfree [-w file]
Gibt Kontrollblöcke für freie STREAMS-Meldungsblöcke aus.
mblk [-w file] [-c] [-d] [-f] [-r] [-p] mblkaddr ...
Gibt Informationen über Streams-Nachrichten aus. Durch die Option
-c werden alle Nachrichtenblöcke, die aus einer einzigen logi-
schen Nachricht bestehen, ausgegeben. Bei der Option -d werden
die zum Nachrichtenblock gehörenden Daten mitausgegeben. Dabei
können die Nachrichtenblöcke in der Reihenfolge ihrer Vorwärts-
verkettung (-f) oder der Rückwärtsverkettung (-r) ausgegeben wer-
den.
mblock [-e] [-w file] [[-p] tableentry ...]
Gibt Kontrollblöcke für zugewiesene STREAMS-Meldungsblöcke aus.
mode [-w file] [mode]
Setzt die Adreßumwandlung für Argumente über mode auf virtuell
(v) oder physisch (p). Ist kein mode angegeben, wird der aktuelle
Modus gedruckt. Bei Beginn einer crash-Sitzung gilt immer der
Modus virtuell.
mount [-e] [-w file] [[-p] tableentry ...]
Abkürzung: m, vfs.
Gibt Informationen über eingehängte Dateisysteme aus.
mplck [-w file] [-p] mplckaddr ...
Gibt Informationen über Mehrprozessor-Sperren (struct lck) aus.
mplock [-w file] [-p] mplckaddr ...
Gibt Informationen über Mehrprozessor-Sperren (struct lck) aus.
mplog [-w file] [-f] [-r] [-l mplckaddr] [count]
Gibt protokollierte Informationen über Mehrprozessor-Sperren aus.
Bei der Option -r erfolgt die Ausgabe unformatiert. Die Option -l
beschränkt die Ausgabe auf die Sperre mplckaddr. Mit count kann
die Anzahl der auszugebenden Protokolleinträge angegeben werden.
mpsema [-w file] [-p] lockaddr ...
Gibt Informationen über die Semaphore lockaddr aus.
mpspin [-w file] [-p] lockaddr ...
Gibt Informationen über die Mehrprozessor-Sperre lockaddr aus.
Seite 10 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
mpstat [-w file]
Gibt Statusinformationen über Mehrprozessor-Sperren aus.
myq [-w file] [-p] queueaddr ...
Gibt die Verwaltungsstrukturen für Nachrichten-Warteschlangen aus
(Datenstruktur struct queue).
nm [-w file] symbol ...
Gibt den Wert und den Typ des angegebenen Symbols aus.
od [-p] [-w file] [-format] [-mode] [-s process] startaddr [count]
Abkürzung: rd.
Gibt eine Reihe von Werten aus, deren Anzahl count entnommen wer-
den kann, wobei bei startaddr begonnen wird und eines der fol-
genden Formate verwendet wird: Zeichen (-c), Dezimalzahlen (-d),
Hexadezimalzahlen (-x), Oktalzahlen (-o), ASCII-Zeichen (-a) oder
eine Mischung aus Hexadezimalzahlen und Zeichen (-h). Dabei wird
einer der folgenden Modi angewendet: "long" (-l), "int" (-i),
"short" (-t) oder "Byte" (-b). Der Standardmodus für Zeichen- und
ASCII-Formate ist "Byte"; der Standardmodus für Dezimal-, Hexade-
zimal- und Oktalformate ist "long". Das Format -h stellt die
Adressen im Speicherabzug bei der Ausgabe sowohl als Hexadezimal-
zahlen als auch als Zeichen dar; es muß kein Modus angegeben wer-
den. Fehlen Angaben für format oder mode, wird der vorherige Wert
verwendet. Bei Beginn einer crash-Sitzung wird das Hexadezimal-
format und der Modus "long" verwendet. Wird für count keine
Angabe gemacht, so wird 1 als Wert vorausgesetzt.
page [-e] [-w file] [[-p] tableentry ...]
Gibt Informationen über Seiten aus.
pcb [-w file] [-u] [process]
pcb [-w file] [-k] [process]
pcb [-w file] [[-p]-i startaddr]
Gibt den Prozeßsteuerblock aus. Sind keine Argumente angegeben,
wird der aktive Prozeßsteuerblock des aktuellen Prozesses ausge-
geben. Die Option -u (von user) gibt den Prozeßsteuerblock für
Benutzer aus. Die Option -k (von kernel) gibt den Prozeßsteuer-
block für den Systemkern aus, der zu dem Prozeß process gehört.
Die Option -i (von interrrupt) druckt den Prozeßsteuerblock für
Unterbrechungen aus, der sich bei startaddr befindet.
plock [-t]
plock [-d]
plock [-u]
Damit kann das Textsegment (-t) oder das Datensegment (-d) des
crash-Pozesses im Speicher gesperrt werden. Keine Option bewirkt
das Sperren von beiden Segmenten im Speicher. Dadurch kann der
crash-Prozeß nicht mehr ausgelagert werden (swapping). Die Option
-u hebt vorhandene Sperren wieder auf.
Seite 11 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
prnode [-e] [-w file] [[-p] tableentry ...]
Gibt Informationen über die Benutzerdaten von Prozessen aus, die
überwacht werden.
proc [-e] [-f] [-w file] [[-p] [-a] tableentry ... #procid ...]
proc [-f] [-w file] [-r]
Abkürzung: p.
Gibt die Prozeßtabelle aus. Informationen aus der Prozeßtabelle
können auf zwei verschiedene Arten dargestellt werden. Zum einen
kann eine beliebige Kombination aus Tabelleneinträgen
(tableentry) und Prozeßnummern (procid) eingegeben werden. Jeder
Prozeßnummer muß ein Nummernzeichen (#) vorangestellt werden. Zum
anderen können Informationen der Prozeßtabelle für lauffähige
Prozesse auch mit der Option -r angegeben werden. Bei Angabe der
Option -a werden nur die Prozesse ausgegeben, die Alarmzeiten
gesetzt haben.
prov [-w file] [[-p] ipprovideraddr ...]
Gibt alle oder bestimmte (ipprovideraddr) Datenstrukturen
struct ipprovider aus.
provext [-w file]
Gibt alle Datenstrukturen struct ipproviderext aus.
ptbl [-w file] [-s process] section segment [count]
ptbl [-w file] [-s process] [-p] addr [count]
Gibt Informationen über Seitendeskriptortabellen aus.
pte [-w file] pteaddr ...
Gibt die Datenstruktur struct pte für die angegebenen Adressen
pteaddr aus.
pty [-f] [-e] [-w file] [-s] [-h] [-l] [[-p] tableentry ...]
Gibt die momentan konfigurierten Pseudoterminals aus. Die Optio-
nen -l, -h und -s liefern Informationen über die STREAMS-Module
ldterm, ptem bzw. pckt.
qrun [-w file]
Gibt die Liste der geplanten STREAMS-Warteschlangen aus.
queue [-e] [-w file] [[-p] tableentry ...]
Gibt STREAMS-Warteschlangen aus.
quit Abkürzung: q.
Beendet die crash-Sitzung.
rcvd [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt die Empfangs-Deskriptortabelle aus.
Seite 12 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
rduser [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt die Empfangs-Deskriptor-Benutzertabelle aus.
redirect [-w file] [-c]
redirect [-w file] [newfile]
Wird für file ein Dateiname angegeben, so wird die Ausgabe der
crash-Sitzung in die Datei newfile umgeleitet. Ist kein Argument
angegeben, wird der Name der Datei ausgegeben, zu der die Ausgabe
umgeleitet wird. Mit der Option -c (von close) können Sie die
zuvor definierte Datei schließen. Die Ausgabe wird dann zur Stan-
dardausgabe umgeleitet.
resource [-e] [-w file]
Gibt die Bekanntmachungstabelle aus.
route [-w file] [-p] routeaddr ...
Gibt die Datenstruktur struct route für die angegebenen Adressen
routeaddr aus.
rtdptbl [-w file] [tableentry ...]
Gibt die Echtzeit-Scheduler-Parametertabelle aus [siehe
rtdptbl(4)].
rtentry [-w file] [-p] rtentryaddr ...
Gibt die Datenstruktur struct rtentry für die angegebenen Adres-
sen rtentryaddr aus.
rtproc [-w file]
Gibt Informationen über Prozesse in der Echtzeit-Scheduler-Klasse
aus.
search [-p] [-w file] [-m mask] [-s process] pattern startaddr length
Gibt die Worte im Speicher aus, die pattern entsprechen, wobei
bei startaddr begonnen wird und die Anzahl der Worte, die
geprüft werden, in length angegeben ist. Die Maske (mask) wird
durch logisches UND (&) mit jedem einzelnen Wort im Speicher ver-
bunden und das Ergebnis mit dem Muster aus pattern verglichen.
Der Standardwert der Maske ist 0xffffffff.
size [-w file] [-x] [structurename ...]
Gibt die Größe der angegebenen Struktur aus. Die Option -x führt
zur Ausgabe der Größe in Hexadezimalformat. Wird kein Argument
angegeben, so wird eine Liste mit Namen von denjenigen Strukturen
ausgegeben, für die Größenwerte zur Verfügung stehen.
sndd [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt die Sende-Deskriptortabelle aus.
snidebug [value]
Setzt den Wert von snidebuglevel auf value.
Seite 13 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
snode [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt Informationen über geöffnete Gerätedateien aus.
sperr [-w file] [-e] [-f]
Abkürzung: sp.
Gibt Informationen und Austauschempfehlungen für die Hardware bei
einem aufgetretenen SP-Bus Fehler aus. Diese Funktion wird nur
beim Prüfen eines Systemspeicherabzuges einer abgestürzten
RM600-xxx unterstützt.
srmount [-w file] [[-p] tableentry ...]
Gibt die Server-Mount-Tabelle aus.
stack [-w file] [-u] [process]
stack [-w file] [-k] [process]
stack [-w file] [[-p] -i startaddr]
Abkürzung: s.
Gibt den Speicherabzug des Stacks aus. Mit der Option -u kann der
Benutzer-Stack, mit der Option -k der Systemkern-Stack ausgegeben
werden. Geben Sie die Option -i an, so wird der Unterbrechungs-
Stack beginnend ab startaddr ausgegeben. Sind keine Argumente
angegeben, wird der Systemkern-Stack für den aktuellen Prozeß
ausgegeben. Der Unterbrechungs-Stack und der Stack für den aktu-
ellen Prozeß sind auf einem laufenden System nicht verfügbar.
stat [-w file]
Gibt statistische Daten zum System aus.
stream [-e] [-f] [-w file] [[-p] tableentry ...]
Gibt die STREAMS-Tabelle aus.
strstat [-w file]
Gibt statistische Angaben zu STREAMS aus.
strtty [-w file] [-l] strttyaddr
Gibt die Datenstruktur struct strtty für die angegebene Adresse
strttyaddr aus.
stt [-w file] sttaddr
Gibt die Datenstruktur vom Typ sttt für die angegebene Adresse
sttaddr aus.
tco [-w file] [-f] [-t] [-p] tcoaddr ...
Gibt die Datenstruktur struct tcoendpt für die angegebenen
Adressen tcoaddr aus.
tcpclearbuf [-w file]
Löscht die protokollierten tcp-Informationen.
Seite 14 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
tcpsetfaddr internetaddr
Setzt die zu protokollierende fremde Internet-Adresse.
tcpsetladdr internetaddr
Setzt die zu protokollierende lokale Internet-Adresse.
tcptrace [-w file]
Gibt die protokollierten tcp-Informationen aus.
tcptracestatus [-w file]
Zeigt den Status der Protokollierung der tcp-Informationen an.
tcpcb [-w file] [-p] tcpcbaddr ...
Gibt die tcp-Verwaltungsstruktur (struct tcpcb) für die angegebe-
nen Adressen tcpcbaddr aus.
tcpiphdr [-w file] [-p] tcpiphdraddr ...
Abkürzung: ti.
Gibt die Datenstruktur struct tcpiphdr für die angegebenen Adres-
sen tcpiphdraddr aus.
tcpstat [-w file] [[-p] tcpstataddr ...]
Zeigt statistische Informationen bezüglich tcp an. Wird die
Adresse tcpstataddr angegeben, dann wird diese Datenstruktur
(struct tcpstat) dafür benutzt.
trace [-w file] [-r] [process]
trace [-w file] [[-p] -i startaddr]
Abkürzung: t.
Gibt das Stackprotokoll aus. Bei der Option -r wird der kfp-Wert
(kernel frame pointer, Systemkern-Rahmenzeiger) benutzt. Die
Funktion kfp gibt den kfp-Wert aus oder definiert ihn. Die Option
-i gibt ein Überwachungsprotokoll des Unterbrechungs-Stacks aus,
wobei bei startaddr begonnen wird. Das Überwachungsprotokoll des
Unterbrechungs-Stacks und des Stacks für den aktuellen Prozeß
sind auf einem laufenden System nicht verfügbar.
troff
Schaltet die ausführliche Ausgabe des Stackprotokolls aus.
tron Schaltet die ausführliche Ausgabe des Stackprotokolls ein.
ts [-w file] virtualaddress ...
Gibt das Textsymbol aus, das der angegebenen Adresse am nächsten
liegt.
tsdptbl [-w file] [tableentry ...]
Gibt die Parametertabelle für den Timesharing-Scheduler aus
[siehe tsdptbl(4)].
Seite 15 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
tsproc [-w file]
Gibt Informationen über Prozesse in der Timesharing-Scheduler-
Klasse aus.
tty [-e] [-f] [-l] [-w file] [-ttype [[-p] tableentry ...]]
tty [-e] [-f] [-l] [-w file] [[-p] startaddr]
Gültige Typen: pp, iu.
Gibt die TTY-Tabelle aus. Sind keine Argumente angegeben, wird
die TTY-Tabelle für beide TTY-Typen ausgegeben. Wird die Option
-t verwendet, so wird die Tabelle für den (einzelnen) angegebenen
TTY-Typ ausgegeben. Folgt der Option -t kein Argument, werden
alle Einträge in der Tabelle ausgegeben. Sie können einen einzel-
nen TTY-Eintrag über startaddr angeben. Die Option -l druckt
Informationen zur Übertragungsprozedur.
udpstat [-w file] [[-p] udpstataddr ...]
Zeigt statistische Informationen bezüglich udp an. Wird die
Adresse udpstataddr angegeben, dann wird diese Datenstruktur
(struct udpstat) dafür benutzt.
uinode [-e] [-f] [-w file] [[-p] tableentry ...]
Abkürzung: ui.
Gibt die ufs-I-Node-Tabelle aus.
user [-f] [-w file] [process]
Abkürzung: u.
Gibt die Datenstruktur struct user für den angegebenen Prozeß
aus. Im Kern verweist die Variable u auf diese Struktur (d. h.
u.ucdir, u.usignal).
var [-w file]
Abkürzung: v.
Gibt die einstellbaren Systemparameter aus.
vfs [-e] [-w file] [[-p] tableentry ...]
Abkürzung: mount, m.
Gibt Informationen über eingehängte Dateisysteme aus.
vfssw [-w file] [[-p] tableentry ...]
Gibt Informationen über konfigurierte Dateisystemtypen aus.
vnode [-w file] [[-p] vnodeaddr ...]
Gibt Informationen über virtuelle I-Nodes aus. Ein virtueller I-
Node stellt dem System eine generische I-Node-Schnittstelle zur
Verfügung. Er ist Teil des VFS (Virtual File System), das für das
Basissystem ein generisches Dateisystem darstellt. Jeder virtu-
elle I-Node besitzt einen dateisystem-spezifischen Datenbereich,
Seite 16 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
den das interne Dateisystem (z. B. ufs) als seinen Platten-I-Node
verwendet.
Außerhalb eines speziellen Dateisystems werden nur virtuelle I-
Nodes verwendet und bearbeitet. Beispielsweise wird das aktuelle
Verzeichnis eines Prozesses bei prozeßspezifischen Daten im
System (u.ucdir) als Zeiger auf einen virtuellen I-Node darge-
stellt.
vtop [-w file] [-s process] startaddr ...
Gibt die physische Adresse aus, die aus der virtuellen Adresse
startaddr berechnet wurde.
w [-f] [-w file] {addr value} ...
Schreibt den Wert value auf die Adresse addr.
Funktionen im ikdb-Emulationsmodus
Wenn mit der crash-Funktion ikdb in den ikdb-Emulationsmodus umge-
schaltet worden ist, sind alle vom ikdb(8) bekannten Funktionen ver-
fügbar. Allerdings sind einige Funktionen in crash nicht enthalten:
arp, assert, B, bp, call, D, d, dump, ki, lb, mm, more, pa, rnode,
rtable, set, shortio, siminfo, so, st, strtty, tco, timtim, un, W, w,
wa.
Zusätzliche Funktionen im ikdb-Emulationsmodus
cd [directorypath]
Setzt den Pfad für Struktur-Module.
file [-w] [filename]
Aktiviert die Ausgabeumleitung der ikdb-Emulation. Bei der Option
-w erfolgt die Ausgabe ausschließlich in die Datei filename,
sonst auf die Standard-Ausgabe und in die Datei. Die Funktion
file ohne Parameter setzt die Ausgabeumleitung wieder zurück.
inpcb {address | offset}
Zeigt den Inhalt einer bestimmten inpcb-Struktur an.
kmapool kmpaddr
Zeigt den Inhalt einer bestimmten kmp-Struktur an.
prabic addr
Zeigt den Inhalt der IFC/BIC-Register ab der Adresse addr an.
Diese Funktion wird nur für die RM600-xxx unterstützt.
ps [address] [type]
Zeigt den Inhalt einer bestimmten Struktur für die Adresse
address an. Dabei ist die Struktur vom Typ type, die als
Struktur-Modul definiert sein muß.
Seite 17 Reliant UNIX 5.44 Gedruckt 11/98
crash(1M) crash(1M)
tcpcb {address | offset}
Zeigt den Inhalt einer bestimmten tcpcb-Struktur an.
troff
Schaltet die ausführliche Ausgabe des Stackprotokolls aus.
tron Schaltet die ausführliche Ausgabe des Stackprotokolls ein.
vtop proc vaddr
Zeigt die Schritte der Umsetzung von der virtuellen in die physi-
sche Speicheradresse für das Adreßpaar proc vaddr an.
DATEIEN
/dev/mem
Systemabbild des aktuell laufenden Systems
SIEHE AUCH
ep(7), ikdb(8).
Seite 18 Reliant UNIX 5.44 Gedruckt 11/98