Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ crash(1M) — Interactive 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought



          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



          NAME
               crash - examine system images

          SYNOPSIS
               /etc/crash [ -d dumpfile ] [ -n namelist ] [ -w outputfile ]

          DESCRIPTION
               The crash command is used to examine the system memory image
               of a live or a crashed system by formatting and printing
               control structures, tables, and other information.  Command
               line arguments to crash are dumpfile, namelist, and output-
               file.

               Dumpfile is the file containing the system memory image.
               The default dumpfile is /dev/mem.

               The text file namelist contains the symbol table information
               needed for symbolic access to the system memory image to be
               examined. The default namelist is /unix.  If a system image
               from another machine is to be examined, the corresponding
               text file must be copied from that machine.

               When the crash command is invoked, a session is initiated.
               The output from a crash session is directed to outputfile.
               The default outputfile is the standard output.

               Input during a crash session is of the form:

                    function [argument ... ]

               where function is one of the crash functions described in
               the FUNCTIONS section of this manual page, and arguments are
               qualifying data that indicate which items of the system
               image are to be printed.

               The default for process-related items is the current process
               for a running system and the process that was running at the
               time of the crash for a crashed system.  If the contents of
               a table are being dumped, the default is all active table
               entries.

               The following function options are available to crash func-
               tions wherever they are semantically valid.

               -e   Display every entry in a table.

               -f   Display the full structure.

               -p   Interpret all address arguments in the command line as
                    physical addresses.

               -s process
                    Specify a process slot other than the default.


          Rev. Base System                                           Page 1





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



               -w file
                    Redirect the output of a function to file.

               Note that if the -p option is used, all address and symbol
               arguments explicitly entered on the command line will be
               interpreted as physical addresses.  If they are not physical
               addresses, results will be inconsistent.

               The functions mode, defproc, and redirect correspond to the
               function options -p, -s, and -w.  The mode function may be
               used to set the address translation mode to physical or vir-
               tual for all subsequently entered functions; defproc sets
               the value of the process slot argument for subsequent func-
               tions; and redirect redirects all subsequent output.

               Output from crash functions may be piped to another program
               in the following way:

                    function [argument ... ]!shell_command

               For example,

                    mount ! grep rw

               will write all mount table entries with an rw flag to the
               standard output.  The redirection option (-w) cannot be used
               with this feature.

               Depending on the context of the function, numeric arguments
               will be assumed to be in a specific radix.  Counts are
               assumed to be decimal.  Addresses are always hexadecimal.
               Table slot arguments are always decimal. Table slot argu-
               ments larger than the size of the function table will not be
               interpreted correctly. Use the findslot command to translate
               from an address to a table slot number.  Default bases on
               all arguments may be overridden.  The C conventions for
               designating the bases of numbers are recognized.  A number
               that is usually interpreted as decimal will be interpreted
               as hexadecimal if it is preceded by 0x and as octal if it is
               preceded by 0.  Decimal override is designated by 0d, and
               binary by 0b.

               Aliases for functions may be any uniquely identifiable ini-
               tial substring of the function name.  Traditional aliases of
               one letter, such as p for proc, remain valid.

               Many functions accept different forms of entry for the same
               argument.  Requests for table information will accept a
               table entry number or a range. A range of slot numbers may
               be specified in the form a-b where a and b are decimal
               numbers.  An expression consists of two operands and an
               operator.  An operand may be an address, a symbol, or a
               number; the operator may be +, -, *, /, &, or | .  An


          Rev. Base System                                           Page 2





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



               operand which is a number should be preceded by a radix pre-
               fix if it is not a decimal number (0 for octal, 0x for hexa-
               decimal, 0b for binary).  The expression must be enclosed in
               parentheses ().  Other functions will accept any of these
               argument forms that are meaningful.

               Two abbreviated arguments to crash functions are used
               throughout.  Both accept data entered in several forms.
               They may be expanded into the following:

                    table_entry = table entry| range

                    start_addr = address| symbol| expression

          FUNCTIONS
               ? [-w file]
                    List available functions.

               !cmd Escape to the shell to execute a command.

               adv [-e] [-w file] [[-p]table_entry...]
                    Print the advertised table.

               base [-w file] number ...
                    Print number in binary, octal, decimal, and hexade-
                    cimal. A number in a radix other than decimal should be
                    preceded by a prefix that indicates its radix as fol-
                    lows:  0x, hexadecimal; 0, octal; and 0b, binary.

               buffer [-w file] [-format] bufferslot

                    or

               buffer [-w file] [-format] [-p]start_addr
                    Alias: b.
                    Print the contents of a buffer in the designated for-
                    mat. The following format designations are recognized:
                    -b, byte: -c, character; -d, decimal; -x, hexadecimal;
                    -o, octal; -r, directory; and -i, inode.  If no format
                    is given, the previous format is used.  The default
                    format at the beginning of a crash session is hexade-
                    cimal.

               bufhdr [-f] [-w file] [[-p]table_entry...]
                    Alias: buf.
                    Print system buffer headers.

               callout [-w file]
                    Alias: c.
                    Print the callout table.

               dballoc [-w file] [class ... ]
                    Print the dballoc table.  If a class is entered, only


          Rev. Base System                                           Page 3





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



                    data block allocation information for that class will
                    be printed.

               dbfree  [-w file] [class ... ]
                    Print free streams data block headers.  If a class is
                    entered, only data block headers for the class speci-
                    fied will be printed.

               dblock [-e] [-w file] [-c class...]

                    or

               dblock [-e] [-w file] [[-p] table_entry...]
                    Print allocated streams data block headers.  If the
                    class option (-c) is used, only data block headers for
                    the class specified will be printed.

               defproc [-w file] [-c]

                    or

               defproc [-w file] [slot]
                    Set the value of the process slot argument.  The pro-
                    cess slot argument may be set to the current slot
                    number (-c) or the slot number may be specified.  If no
                    argument is entered, the value of the previously set
                    slot number is printed.  At the start of a crash ses-
                    sion, the process slot is set to the current process.

               dis [-w file] [-a] start_addr [count]
                    Disassemble from the start address for count instruc-
                    tions. The default count is 1.  The absolute option
                    (-a) specifies a non-symbolic disassembly.

               ds [-w file] virtual_address ...
                    Print the data symbol whose address is closest to, but
                    not greater than, the address entered.

               file [-e] [-w file] [[-p]table_entry...]
                    Alias: f.
                    Print the file table.

               findaddr [-w file] table slot
                    Print the address of slot in table.  Only tables avail-
                    able to the size function are available to findaddr.

               findslot [-w file] virtual_address ...
                    Print the table, entry slot number, and offset for the
                    address entered.  Only tables available to the size
                    function are available to findslot.

               fs [-w file] [[-p]table_entry...]
                    Print the file system information table.


          Rev. Base System                                           Page 4





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



               gdp [-e] [-f] [-w file] [[-p]table_entry...]
                    Print the gift descriptor protocol table.

               gdt [-e] [-w file] [[-p] table_entry...]
                    Print the global descriptor table.

               help [-w file] function ...
                    Print a description of the named function, including
                    syntax and aliases.

               idt [-e] [-w file] [[-p]table_entry...]
                    Print the interrupt descriptor table.

               inode [-e] [-f] [-w file] [[-p]table_entry...]
                    Alias: i.
                    Print the inode table, including file system switch
                    information.

               kfp [-w file] [value]
                    Print the frame pointer for the start of a kernel stack
                    trace.  If the value argument is supplied, the kfp is
                    set to that value.

               lck [-e] [-w file] [[-p]table_entry...]
                    Alias: l.
                    Print record-locking information. If the -e option is
                    used or table address arguments are given, the record
                    lock list is printed.  If no argument is entered,
                    information on locks relative to inodes is printed.

               ldt [-e] [-w file] [-s process] [[-p]table_entry...]
                    Print the local descriptor table for the given process,
                    or for the current process if none is given.

               linkblk [-e] [-w file] [[-p]table_entry...]
                    Print the linkblk table.

               map [-w file] mapname ...
                    Print the map structure of mapname.

               mbfree [-w file]
                    Print free streams message block headers.

               mblock [-e] [-w filename] [[-p]table_entry...]
                    Print allocated streams message block headers.

               mode [-w file] [mode]
                    Set address translation of arguments to virtual (v) or
                    physical (p) mode.  If no mode argument is given, the
                    current mode is printed.  At the start of a crash ses-
                    sion, the mode is virtual.

               mount [-e] [-w file] [[-p]table_entry...]


          Rev. Base System                                           Page 5





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



                    Alias: m.
                    Print the mount table.

               nm [-w file] symbol ...
                    Print value and type for the given symbol.

               od [-p] [-w file] [-format] [-mode] [-s process] start_addr

               [count]
                    Alias: rd.
                    Print count values starting at the start address in one
                    of the following formats:  character (-c), decimal
                    (-d), hexadecimal (-x), octal (-o), ASCII (-a), or
                    hexadecimal/character (-h), and one of the following
                    modes: long (-l), short (-t), or byte (-b).  The
                    default mode for character and ASCII formats is byte;
                    the default mode for decimal, hexadecimal, and octal
                    formats is long.  The format -h prints both hexadecimal
                    and character representations of the addresses dumped;
                    no mode needs to be specified.  When format or mode is
                    omitted, the previous value is used.  At the start of a
                    crash session, the format is hexadecimal and the mode
                    is long.  If no count is entered, 1 is assumed.

               panic
                    Print the latest system notices, warnings, and panic
                    messages from the limited circular buffer kept in
                    memory.

               pcb [-w file] [process]
                    Print the process control block (TSS) for the given
                    process.  If no arguments are given, the active TSS for
                    the current process is printed.

               pdt [-e] [-w file] [-s process] [-p] start_addr [count]
                    The page descriptor table of the designated memory sec-
                    tion and segment is printed.  Alternatively, the page
                    descriptor table starting at the start address for
                    count entries is printed.  If no count is entered, 1 is
                    assumed.

               pfdat [-e] [-w file] [[-p]table_entry...]
                    Print the pfdata table.

               proc [-e] [-f] [-w file] [[-p] table_entry ... #procid ...]

                    or

               proc [-f] [-w file] [-r]
                    Alias: p.
                    Print the process table. Process table information may
                    be specified in two ways.  First, any mixture of table
                    entries and process ids may be entered. Each process id


          Rev. Base System                                           Page 6





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



                    must be preceded by a #.  Alternatively, process table
                    information for executable processes may be specified
                    with the executable option (-r).  The full option (-f)
                    details most of the information in the process table as
                    well as the region table for that process.

               qrun [-w file]
                    Print the list of scheduled streams queues.

               queue [-e] [-w file] [[-p]table_entry...]
                    Print streams queues.

               quit Alias: q.
                    Terminate the crash session.

               rcvd [-e] [-f] [-w file] [[-p]table_entry...]
                    Print the receive descriptor table.

               redirect [-w file] [-c]

                    or

               redirect [-w file] [file]
                    Used with a file name, redirects output of a crash ses-
                    sion to the named file.  If no argument is given, the
                    file name to which output is being redirected is
                    printed.  Alternatively, the close option (-c) closes
                    the previously set file and redirects output to the
                    standard output.

               region [-e] [-w file] [[-p]table_entry...]
                    Print the region table.

               sdt [-e] [-w file] [-s process] section

                    or

               sdt [-e] [-w file] [-s process] [-p] start_addr[count]
                    The segment descriptor table for the current process is
                    printed.

               search [-p] [-w file] [-m mask] [-s process]

               pattern start_addr count
                    Print the long words in memory that match pattern,
                    beginning at the start address for count long words.
                    The mask is anded (&) with each memory word and the
                    result compared against the pattern.  The mask defaults
                    to 0xffffffff.

               size [-w file] [-x] [structure_name ... ]
                    Print the size of the designated structure.  The (-x)
                    option prints the size in hexadecimal.  If no argument


          Rev. Base System                                           Page 7





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



                    is given, a list of the structure names for which sizes
                    are available is printed.

               sndd [-e] [-f] [-w file] [[-p]table_entry...]
                    Print the send descriptor table.

               srmount [-e] [-w file] [[-p]table_entry...]
                    Print the server mount table.

               stack [-w file] [process]
                    Alias:  s.
                    Dump stack.  If no arguments are entered, the kernel
                    stack for the current process is printed.  The inter-
                    rupt stack and the stack for the current process are
                    not available on a running system.

               stat [-w file]
                    Print system statistics.

               stream [-e] [-f] [-w file] [[-p]table_entry...]
                    Print the streams table.

               strstat [-w file]
                    Print streams statistics.

               trace [-w file] [-r] [process]
                    Alias: t.
                    Print kernel stack trace.  The kfp value is used with
                    the -r option.

               ts [-w file] virtual_address ...
                    Print closest text symbol to the designated address.

               tty [-e] [-f] [-w file] [-ttype[[-p]table_entry...]]
                    Valid types: co, c1, c2 (console, com1, com2).
                    Print the tty table. If no arguments are given, the tty
                    table for the console is printed.  If the -t option is
                    used, the table for the single tty type specified is
                    printed.  If no argument follows the type option, all
                    entries in the table are printed.  A single tty entry
                    may be specified from the start address.

               user [-f] [-w file] [process]
                    Alias: u.
                    Print the ublock for the designated process.

               var [-w file]
                    Alias: v.
                    Print the tunable system parameters.

               vtop [-w file] [-s process] start_addr...
                    Print the physical address translation of the virtual
                    start address.


          Rev. Base System                                           Page 8





          CRASH(1M)            INTERACTIVE UNIX System            CRASH(1M)



          FILES
               /dev/mem       system image of currently running system





















































          Rev. Base System                                           Page 9



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026