[OpenVMS documentation]
[Site home] [Send comments] [Help with this site] [How to order documentation] [OpenVMS site] [Compaq site]
Updated: 11 December 1998

OpenVMS VAX System Dump Analyzer Utility Manual


Previous Contents Index

/SYSTEM

Invokes SDA to analyze a running system.

Format

/SYSTEM


Parameters

None.

Description

See Section 3 for a full discussion of using SDA to analyze a running system.

You cannot specify the /CRASH_DUMP or /RELEASE qualifiers when you include the /SYSTEM qualifier in the ANALYZE command.


Example


$  ANALYZE/SYSTEM
      

This command invokes SDA to analyze the running system.

SDA Commands

Table SDA-11 briefly describes the SDA commands that are explained fully in the following section.

Table SDA-11 Descriptions of SDA Commands
Command Description
@ (Execute Procedure) Causes SDA to execute SDA commands contained in a file
ATTACH Switches control of your terminal from your current process to another process in your job
COPY Copies the contents of the dump file to another file
DEFINE Assigns a value to a symbol or associates an SDA command with a terminal key
EVALUATE Computes and displays the value of the specified expression in both hexadecimal and decimal
EXAMINE Displays either the contents of a location or range of locations in physical memory, or the contents of a register
EXIT Exits from an SDA display or exits from the SDA utility
FORMAT Displays a formatted list of the contents of a block of memory
HELP Displays information about the SDA utility, its operation, and the format of its commands
READ Loads the global symbols contained in the specified object module into the SDA symbol table
REPEAT Repeats execution of the last command issued
SEARCH Scans a range of memory locations for all occurrences of a specified value
SET CPU Selects a processor to become the SDA current CPU
SET LOG Initiates or discontinues the recording of an SDA session in a text file
SET OUTPUT Redirects output from SDA to the specified file or device
SET PROCESS Selects a process to become the SDA current process
SET RMS Changes the options shown by the SHOW PROCESS/RMS command
SHOW CALL_FRAME Displays the locations and contents of the longwords representing a procedure call frame
SHOW CLUSTER Displays connection manager and system communications services (SCS) information for all nodes in a cluster
SHOW CONNECTIONS Displays information about all active connections between SCS processes or a single connection
SHOW CPU Displays information about the state of a processor at the time of the system failure
SHOW CRASH In the analysis of a system failure, displays information about the state of the system at the time of the failure; in the analysis of a running system, provides information identifying the system
SHOW DEVICE Displays a list of all devices in the system and their associated data structures or displays the data structures associated with a given device or devices
SHOW EXECUTIVE Displays the location and size of each loadable image that makes up the executive
SHOW HEADER Displays the header of the dump file
SHOW LAN Displays information contained in various local area network (LAN) data structures
SHOW LOCK Displays information about all lock management locks in the system, cached locks, or a specified lock
SHOW LOGS Displays information about transaction logs currently open for the node
SHOW PAGE_TABLE Displays a range of system page table entries, the entire system page table, or the entire global page table
SHOW PFN_DATA Displays information that is contained in the page lists and PFN database
SHOW POOL Displays information about the disposition of paged and nonpaged memory, nonpaged dynamic storage pool, and paged dynamic storage pool
SHOW PORTS Displays those portions of the port descriptor table (PDT) that are port independent
SHOW PROCESS Displays the software and hardware context of any process in the balance set
SHOW RESOURCE Displays information about all resources in the system or about a resource associated with a specific lock
SHOW RMS Displays the RMS data structures selected by the SET RMS command to be included in the default display of the SHOW PROCESS/RMS command
SHOW RSPID Displays information about response IDs (RSPIDs) of all SCS connections or, optionally, a specific SCS connection
SHOW SPINLOCKS Displays information taken from the data structures that provide system synchronization in a multiprocessing environment
SHOW STACK Displays the location and contents of the four process stacks (of the SDA current process) and the interrupt stack (of the SDA current CPU)
SHOW SUMMARY Displays a list of all active processes and the values of the parameters used in swapping and scheduling those processes
SHOW SYMBOL Displays the hexadecimal value of a symbol and, if the value is equal to an address location, the contents of that location
SHOW TRANSACTIONS Displays information about all transactions on the node or about a specified transaction
SPAWN Creates a subprocess of the process currently running SDA, copying the context of the current process to the subprocess
VALIDATE QUEUE Validates the integrity of the specified queue by checking the pointers in the queue

@ (Execute Procedure)

Causes SDA to execute SDA commands contained in a file. Use this command to execute a set of frequently used SDA commands.

Format

@filespec


Parameter

filespec

Name of a file that contains the SDA commands to be executed. The default file type is .COM.

Example


SDA> @USUAL
      

The Execute Procedure command executes the following commands, as contained in a file named USUAL.COM:


SET OUTPUT LASTCRASH.LIS 
SHOW CRASH 
SHOW PROCESS 
SHOW STACK 
SHOW SUMMARY 

This command procedure first makes the file LASTCRASH.LIS the destination for output generated by subsequent SDA commands. Next, the command procedure sends to the file information about the crash and its context, a description of the process executing at the time of the process, the contents of the stack on which the crash occurred, and a list of the processes active on the CPU that crashed.

An EXIT command within a command procedure terminates the procedure at that point, as would an end-of-file marker.

You cannot nest command procedures.

ATTACH

Switches control of your terminal from your current process to another process in your job.

Format

ATTACH [/PARENT] process-name


Parameter

process-name

Name of the process to which you want to transfer control.

Qualifier

/PARENT

Transfers control of the terminal to the parent process of the current process. When you specify this qualifier, you cannot specify the process-name parameter.

Examples

#1

SDA> ATTACH/PARENT
      

This ATTACH command attaches the terminal to the parent process of the current process.

#2

SDA> ATTACH DUMPER
      

This ATTACH command attaches the terminal to a process named DUMPER in the same job as the current process.

COPY

Copies the contents of the dump file to another file.

Format

COPY output-filespec


Parameter

output-filespec

Name of the device, directory, and file to which SDA copies the dump file. The default file specification is:

SYS$DISK:[default-dir]filename.DMP 

SYS$DISK and [default-dir] represent the disk and directory specified in your last SET DEFAULT command. You must supply at least the file name.


Description

Each time the system fails, it copies the contents of physical memory and the hardware context of the current process (as directed by the DUMPSTYLE parameter) into the file SYS$SYSTEM:SYSDUMP.DMP (or the paging file), overwriting its current contents. If you do not save this crash dump elsewhere, it will be overwritten the next time the system fails.

The COPY command allows you to preserve a crash dump by copying its contents to another file. It is generally useful to invoke SDA during system initialization (from within SYS$MANAGER:SYSTARTUP_VMS.COM) to execute the COPY command. This ensures that a copy of the dump file is made each time the system fails.

The COPY command does not affect the contents of SYS$SYSTEM:SYSDUMP.DMP.

If you are using the paging file (SYS$SYSTEM:PAGEFILE.SYS) as the dump file instead of SYSDUMP.DMP, you can use the COPY command to explicitly release the blocks of the paging file that contain the dump, thus making them available for paging. Although the copy operation succeeds nonetheless, the release operation requires that your process have change-mode-to-kernel (CMKRNL) privilege. Once the dump pages have been released from the paging file, the dump information in those pages might be lost. You need to analyze the copy of the dump created by the COPY command.


Example


SDA> COPY SYS$CRASH:SAVEDUMP
      

The COPY command copies the dump file into the file SYS$CRASH:SAVEDUMP.DMP.

DEFINE

Assigns a value to a symbol or associates an SDA command with a terminal key.

Format

DEFINE [symbols-name [=] expression| /KEY key-name command |[/qualifier....]]


Parameters

symbol-name

Name, containing from 1 to 31 alphanumeric characters, that identifies the symbol. See Section 7.2.4 for a description of SDA symbol syntax and a list of default symbols.

expression

Definition of the symbol's value. See Section 7.2 for a discussion of the components of SDA expressions.

key-name

Name of the key to be defined. You can define the following keys under SDA:
Key Name Key Designation
PF1 LK201, VT100, VT52 Red
PF2 LK201, VT100, VT52 Blue
PF3 LK201, VT100, VT52 Black
PF4 LK201, VT100
KP0...KP9 Keypad 0--9
PERIOD Keypad period
COMMA Keypad comma
MINUS Keypad minus
ENTER Keypad Enter
UP Up arrow
DOWN Down arrow
LEFT Left arrow
RIGHT Right arrow
E1 LK201 Find
E2 LK201 Insert Here
E3 LK201 Remove
E4 LK201 Select
E5 LK201 Prev Screen
E6 LK201 Next Screen
HELP LK201 Help
DO LK201 Do
F7...F20 LK201 function keys

command

SDA command the key is to be defined as. The command must be enclosed in quotation marks (" ").

Qualifiers

/ECHO

/NOECHO

Determines whether the equivalence string is displayed on the terminal screen after the defined key has been pressed. The /NOECHO qualifier functions only with the /TERMINATE qualifier. The default is /ECHO.

/IF_STATE=(state-name,...)

/NOIF_STATE

Specifies a list of one or more states, one of which must be in effect for the key definition to be in effect. States are placed in effect by the /SET_STATE qualifier, which is described in this section.

The state-name is an alphanumeric string, enclosed in quotation marks (" "). By including several state names, you can define a key to have the same function in all the specified states. If you specify only one state name, you can omit the parentheses.

If you omit the /IF_STATE qualifier---or use /NOIF_STATE---the current state is used.

/KEY

Defines a key as an SDA command. You need only to press the defined key and the Return key to issue the command. If you use the /TERMINATE qualifier as well, you do not need to press the Return key.

When you define some keys as SDA commands, you must press Ctrl/V first before those keys will execute the commands. This is because of the escape sequences the keys generate and the way the terminal driver handles those escape sequences. The following keys, when defined as SDA commands, must be preceded by a Ctrl/V:
Key Name Key Designation
LEFT Left arrow
RIGHT Right arrow
F7...F14 LK201 function keys

/SET_STATE=state-name

Causes the key being defined to cause a key state change rather than issue an SDA command. When you use the /SET_STATE qualifier, you supply the name of a key state in place of the key-name parameter. In addition, you must define the command parameter as a pair of quotation marks (" ").

The key state can be any name you think appropriate. For example, you can define the PF1 key to set the state to GOLD and use the /IF_STATE=GOLD qualifier to allow two definitions for other keys, one in the GOLD state and one in the non-GOLD state.

/TERMINATE

/NOTERMINATE

Causes the key definition to include termination of the command, which causes SDA to execute the command when the defined key is pressed. Therefore, you do not have to press the Return key after you press the defined key if you specify the /TERMINATE qualifier.

Description

The DEFINE command causes SDA to evaluate an expression and then assign its value to a symbol. Both the DEFINE and EVALUATE commands perform computations in order to evaluate expressions. DEFINE adds symbols to the SDA symbol table but does not display the results of the computation. EVALUATE displays the results of the computation but does not add symbols to the SDA symbol table.

The DEFINE/KEY command associates an SDA command with the specified key, in accordance with any specified qualifiers.

If the symbol or key is already defined, SDA replaces the old definition with the new one. Symbols and keys remain defined until you exit SDA.


Examples

#1

SDA>  DEFINE BEGIN = 80058E00
SDA>  DEFINE END = 80058E60
SDA>  EXAMINE BEGIN:END
      

In this example, DEFINE defines two addresses, called BEGIN and END. These symbols serve as reference points in memory, defining a range of memory locations that the EXAMINE command can inspect.

#2

SDA>  DEFINE NEXT = @PC
SDA>  EXAMINE/INSTRUCTION NEXT
NEXT:   MOVL @00(R6),R0
      

Symbol NEXT defines the address contained in the program counter so that you can use the symbol in an EXAMINE/INSTRUCTION command.

#3

SDA>  DEFINE VEC SCH$GL_PCBVEC
SDA>  EXAMINE VEC
VEC: 80B7D31C  ".O.."
      

After the value of global symbol SCH$GL_PCBVEC has been assigned to the symbol VEC, VEC is used to examine the memory location or value represented by the global symbol.

#4

SDA>  DEFINE COUNT = 7
SDA>  DEFINE RESULT = COUNT * COUNT
SDA>  EVALUATE RESULT
Hex = 00000031   Decimal = 49       PR$_SBIS 
                                                RESULT
      

The first DEFINE command assigns the value 7 to symbol COUNT. The second DEFINE command defines RESULT to be the result of the evaluation of an arithmetic expression using the symbol COUNT. Evaluation of RESULT shows that system symbol PR$_SBIS has an equivalent value.

#5

SDA> DEFINE/KEY PF1 "SHOW STACK"
SDA> [PF1] SHOW STACK [RETURN]
Process stacks (on CPU 00)
-------------------------
Current operating stack (KERNEL):
              7FFE8DD4  00001703     SGN$C_MAXPGFL+703
              7FFE8DD8  80127920 
              7FFE8DDC  00000000 
              7FFE8DE0  00000000 
              7FFE8DE4  00000000 
              7FFE8DE8  00000000 
              7FFE8DEC  7FF743E4 
              7FFE8DF0  7FF743CC 
       SP =>  7FFE8DF4  8000E646     EXE$CMODEXEC+1EE
              7FFE8DF8  7FFEDE96     SYS$CMKRNL+006
              7FFE8DFC  03C00000
 
      

The DEFINE/KEY command defines PF1 as the SHOW STACK command. When you press the PF1 key, SDA displays the command and waits for you to press the Return key.

#6

SDA> DEFINE/KEY/TERMINATE PF1 "SHOW STACK"
SDA> [PF1] SHOW STACK
Process stacks (on CPU 00)
-------------------------
Current operating stack (KERNEL):
   .
   .
   .
      

The DEFINE/KEY command defines PF1 as the SHOW STACK command. Also specifying the /TERMINATE qualifier causes SDA to execute the SHOW STACK command without waiting for you to press the Return key.

#7

SDA> DEFINE/KEY/SET_STATE="GREEN" PF1 ""
SDA> DEFINE/KEY/TERMINATE/IF_STATE=GREEN PF3 "SHOW STACK"
SDA> [PF1] [PF3] SHOW STACK
Process stacks (on CPU 00)
-------------------------
Current operating stack (KERNEL):
   .
   .
   .
      

The first DEFINE command defines PF1 as a key that sets command state GREEN. The trailing pair of quotation marks is required syntax, indicating that no command is to be executed when you press this key.

The second DEFINE command defines PF3 as the SHOW STACK command, but using the /IF_STATE qualifier makes the definition valid only when the command state is GREEN. Thus, you must press PF1 before pressing PF3 to issue the SHOW STACK command. The /TERMINATE qualifier causes the command to execute as soon as you press the PF3 key.


Previous Next Contents Index

[Site home] [Send comments] [Help with this site] [How to order documentation] [OpenVMS site] [Compaq site]
[OpenVMS documentation]

Copyright © Compaq Computer Corporation 1998. All rights reserved.

Legal
4556PRO_005.HTML