Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

OpenVMS Alpha System Analysis Tools Manual


Previous Contents Index


SHOW SUMMARY

Displays a list of all active processes and the values of the parameters used in swapping and scheduling these processes.

Format

SHOW SUMMARY [/IMAGE|/THREAD|/USER=username]


Parameters

None.

Qualifiers

/IMAGE

Causes SDA to display, if possible, the name of the image being executed within each process.

/THREAD

Displays information on all the current threads associated with the current process.

/USER=username

Displays only the processes of the specified user. Wildcards can be used in /USER=username, in which case SDA displays processes of all matching users. The default action is for SDA to display data for all processes, regardless of username.

Description

The SHOW SUMMARY command displays the information in Table 4-24 for each active process in the system.

Table 4-24 Process Information in the SHOW SUMMARY Display
Column Contents
Extended PID The 32-bit number that uniquely identifies the process
Indx Index of this process into the PCB array
Process name Name assigned to the process
Username Name of the user who created the process
State Current state of the process. Table 4-25 shows the 14 states and their meanings.
Pri Current scheduling priority of the process
PCB/KTB Address of the process control block or address of the kernel thread block
PHD/FRED Address of the process header or address of the floating-point registers and execution data block
Wkset Number (in decimal) of pages currently in the process working set

Table 4-25 Current State Information
State Meaning
COM Computable and resident in memory.
COMO Computable, but outswapped.
CUR Currently executing.
CEF Waiting for a common event flag.
LEF Waiting for a local event flag.
LEFO Outswapped and waiting for a local event flag.
HIB Hibernating.
HIBO Hibernating and outswapped.
SUSP Suspended.
SUSPO Suspended and outswapped.
PFW Waiting for a page that is not in memory (page-fault wait).
FPG Waiting to add a page to its working set (free-page wait).
COLPG Waiting for a page collision to be resolved (collided-page wait); this usually occurs when several processes cause page faults on the same shared page.
MWAIT Miscellaneous wait.
RWxxx Waiting for system resource xxx.


Example


SDA> SHOW SUMMARY
Current process summary
-----------------------
 Extended Indx Process name    Username    State   Pri PCB/KTB  PHD/FRED Wkset
-- PID -- ---- --------------- ----------- ------- --- -------- -------- ------
 00000041 0001 SWAPPER                      HIB     16 80C641D0 80C63E00   0
 00000045 0005 IPCACP          SYSTEM       HIB     10 80DC0780 81266000  39
 00000046 0006 ERRFMT          SYSTEM       HIB      8 80DC2240 8126C000  57
 00000047 0007 OPCOM           SYSTEM       HIB      8 80DC3340 81272000  31
 00000048 0008 AUDIT_SERVER    AUDIT$SERVER HIB     10 80D61280 81278000 152
 00000049 0009 JOB_CONTROL     SYSTEM       HIB     10 80D620C0 8127E000  50
 0000004A 000A SECURITY_SERVER SYSTEM       HIB     10 80DC58C0 81284000 253
 0000004B 000B TP_SERVER       SYSTEM       HIB     10 80DC8900 8128A000  75
 0000004C 000C NETACP          DECNET       HIB     10 80DBFE00 8125A000  78
 0000004D 000D EVL             DECNET       HIB      6 80DCA080 81290000  76
 0000004E 000E REMACP          SYSTEM       HIB      8 80DE4E00 81296000  14
 00000050 0010 DECW$SERVER_0   SYSTEM       HIB      8 80DEF940 812A2000 739
 00000051 0011 DECW$LOGINOUT   <login>      LEF      4 80DF0F00 812A8000 273
 00000052 0012 SYSTEM          SYSTEM       LEF      9 80D772C0 81260000  75
 
 
 
      

The SHOW SUMMARY command describes all active processes in the system at the time of the system failure. Note that there was no process in the CUR state at the time of the failure.


SHOW SYMBOL

Displays the hexadecimal value of a symbol and, if the value is equal to an address location, the contents of that location.

Format

SHOW SYMBOL [/ALL [/ALPHA|/VALUE]] symbol-name


Parameter

symbol-name

Name of the symbol to be displayed. You must provide a symbol-name.

Qualifiers

/ALL

Displays information on all symbols whose names begin with the characters specified in symbol-name.

/ALPHA

When used with the /ALL qualifier, the /ALPHA qualifier displays the symbols sorted only in alphabetical order. The default is to display the symbols twice, sorted alphabetically and then by value.

When used with a wildcard symbol name, the /ALPHA qualifier displays the symbols in alphabetical order. This is the default action.

/VALUE

When used with the /ALL qualifier, the /VALUE qualifier displays the symbols sorted only in value order. The default is to display the symbols twice, sorted alphabetically and then by value.

When used with a wildcard symbol name, the /VALUE qualifier displays the symbols in value order.


Description

The SHOW SYMBOL command without the /ALL qualifier specified allows for standard wildcards in the symbol-name parameter. By default, matching symbols are displayed only in alphabetical order. If SHOW SYMBOL/VALUE is specified, then matching symbols are output sorted by value. If SHOW SYMBOL/ALPHA/VALUE is specified, then matching symbols are displayed twice, sorted alphabetically and then by value.

The SHOW SYMBOL/ALL command is useful for determining the values of symbols that belong to a symbol set, as illustrated in the following examples.


Examples

#1

SDA> SHOW SYMBOL G
G = FFFFFFFF.80000000 :  6BFA8001.201F0104
      

The SHOW SYMBOL command evaluates the symbol G as 8000000016 and displays the contents of address 8000000016 as 201F010416.

#2

SDA>  SHOW SYMBOL/ALL BUG
 
Symbols sorted by name
----------------------
BUG$L_BUGCHK_FLAGS          = FFFFFFFF.804031E8 : 00000000.00000001
BUG$L_FATAL_SPSAV           = FFFFFFFF.804031F0 : 00000000.00000001
BUG$REBOOT                  = FFFFFFFF.8042E320 : 00000000.00001808
BUG$REBOOT_C                = FFFFFFFF.8004f4D0 : 47FB041D.47FD0600
   .
   .
   .
Symbols sorted by value
----------------------
BUG$REBOOT_C                = FFFFFFFF.8004f4D0 :47FB041D.47FD0600
BUG$L_BUGCHK_FLAGS          = FFFFFFFF.804031E8 :00000000.00000001
BUG$L_FATAL_SPSAV           = FFFFFFFF.804031F0 :00000000.00000001
BUG$REBOOT                  = FFFFFFFF.8042E320 :00000000.00001808
   .
   .
   .
 
      

This example shows the display produced by the SHOW SYMBOL/ALL command. SDA searches its symbol table for all symbols that begin with the string "BUG" and displays the symbols and their values. Although certain values equate to memory addresses, it is doubtful that the contents of those addresses are actually relevant to the symbol definitions in this instance.


SHOW WORKING_SET_LIST

Displays the system working set list and retains the current process context.

Format

SHOW WORKING_SET_LIST [={GPT|SYSTEM|LOCKED|n }]


Parameters

None.

Qualifiers

None.

Description

The SHOW WORKING_SET_LIST command displays the contents of requested entries in the system working set list. If no option is given, all working set list entries are displayed. Table 4-26 shows the options available with SHOW WORKING_SET_LIST. The SHOW WORKING_SET_LIST command is equivalent to the SHOW PROCESS/SYSTEM/WORKING_SET_LIST command. See the SHOW PROCESS command and Table 4-17 for more information.

Table 4-26 Options for the SHOW WORKING_SET_LIST Command
Options Results
GPT Displays only working set list entries that are for global page table pages.
SYSTEM Displays only working set list entries for pageable system pages.
LOCKED Displays only working set list entries for pageable system pages that are locked in the system working set.
n Displays a specific working set entry, where n is the working set list index (WSLX) of the entry of interest.


SPAWN

Creates a subprocess of the process currently running SDA, copying the context of the current process to the subprocess and, optionally, executing a specified command within the subprocess.

Format

SPAWN [/qualifier[,...]] [command]


Parameter

command

Name of the command that you want the subprocess to execute.

Qualifiers

/INPUT=filespec

Specifies an input file containing one or more command strings to be executed by the spawned subprocess. If you specify a command string with an input file, the command string is processed before the commands in the input file. Once processing is complete, the subprocess is terminated.

/NOLOGICAL_NAMES

Specifies that the logical names of the parent process are not to be copied to the subprocess. The default behavior is that the logical names of the parent process are copied to the subprocess.

/NOSYMBOLS

Specifies that the DCL global and local symbols of the parent process are not to be passed to the subprocess. The default behavior is that these symbols are passed to the subprocess.

/NOTIFY

Specifies that a message is to be broadcast to SYS$OUTPUT when the subprocess completes processing or aborts. The default behavior is that such a message is not sent to SYS$OUTPUT.

/NOWAIT

Specifies that the system is not to wait until the subprocess is completed before allowing more commands to be specified. This qualifier allows you to specify new commands while the spawned subprocess is running. If you specify /NOWAIT, use /OUTPUT to direct the output of the subprocess to a file to prevent more than one process from simultaneously using your terminal.

The default behavior is that the system waits until the subprocess is completed before allowing more commands to be specified.

/OUTPUT=filespec

Specifies an output file to which the results of the SPAWN operation are written. To prevent output from the spawned subprocess from being displayed while you are specifying new commands, specify an output other than SYS$OUTPUT whenever you specify /NOWAIT. If you omit the /OUTPUT qualifier, output is written to the current SYS$OUTPUT device.

/PROCESS=process-name

Specifies the name of the subprocess to be created. The default name of the subprocess is USERNAME_n, where USERNAME is the user name of the parent process. The variable n represents the subprocess number.

Example


SDA>  SPAWN
$  MAIL
   .
   .
   .
$  DIR
   .
   .
   .
$  LO
   Process SYSTEM_1 logged out at 5-JAN-1993 15:42:23.59
SDA> 
      

This example uses the SPAWN command to create a subprocess that issues DCL commands to invoke the Mail utility. The subprocess then lists the contents of a directory before logging out to return to the parent process executing SDA.


VALIDATE PFN_LIST

Validates that the page counts on lists are correct.

Format

VALIDATE PFN_LIST {/ALL (d)|[/BAD|/FREE|/MODIFIED|/PRIVATE| /UNTESTED|/ZERO]}


Parameters

None.

Qualifiers

/ALL

Validates all the PFN lists: bad, free, modified, and zero.

/BAD

Validates the bad page list.

/FREE

Validates the free page list.

/MODIFIED

Validates the modified page list.

/PRIVATE

Validates all private PFN lists.

/UNTESTED

Validates the state of the untested PFN list that was set up for deferred memory testing.

/ZERO

Validates the zero page list.

Description

The VALIDATES PFN_LIST command validates the specified PFN list(s) bit counting the number of entries in the list and comparing that to the running count of entries for each list maintained by the system.

Examples

#1

SDA> VALIDATES PFN_LIST/ALL
Free list: expected 445 pages, found 0 pages
         excluding zeroded free list with expected size 116 pages
Zeroed free list validated: 116 pages
Modified list validated: 311 pages
Bad page list validated: 0 pages
      

#2

SDA>VALIDATES PFN_LIST/FREE
Free list: expected 445 pages, found 0 pages
         excluding zeroed free list with expected size 116 pages
      


VALIDATE QUEUE

Validates the integrity of the specified queue by checking the pointers in the queue.

Format

VALIDATE QUEUE [address]
[/BACKLINK|/LIST|/PHYSICAL|
/QUADWORD|/SELF_RELATIVE|/SINGLY_LINKED]


Parameter

address

Address of an element in a queue.

If you specify the period (.) as the address, SDA uses the last evaluated expression as the queue element's address.

If you do not specify an address, the VALIDATE QUEUE command determines the address from the last issued VALIDATE QUEUE command in the current SDA session.

If you do not specify an address, and no queue has previously been specified, SDA displays the following error message:


%SDA-E-NOQUEUE, no queue has been specified for validation 


Qualifiers

/BACKLINK

Allows doubly linked lists to be validated from the tail of the queue. If the queue is found to be broken when validated from the head of the queue, /BACKLINK can be used to narrow the list of corrupted entries.

/LIST

Displays address of each element in the queue.

/PHYSICAL

Allows validation of queues whose header and links are physical addresses.

/QUADWORD

Allows the validate operation to occur on queues with linked lists of quadword addresses.

/SELF_RELATIVE

Specifies that the selected queue is a self-relative queue. Other processes cannot insert or remove queue entries while the current process is doing so.

/SINGLY_LINKED

Allows validation of queues that have no backward pointers.

Description

The VALIDATE QUEUE command uses the forward, and optionally, backward pointers in each element of the queue to make sure that all such pointers are valid and that the integrity of the queue is intact. If the queue is intact, SDA displays the following message:


Queue is complete, total of n elements in the queue 
In these messages, n represents the number of entries the VALIDATE QUEUE command has found in the queue.

If SDA discovers an error in the queue, it displays one of the following error messages:


Error in forward queue linkage at address nnnnnnnn after tracing x elements 
Error comparing backward link to previous structure address (nnnnnnnn) 
Error occurred in queue element at address oooooooo after tracing pppp elements 

These messages can appear frequently when the VALIDATE QUEUE command is used within an SDA session that is analyzing a running system. In a running system, the composition of a queue can change while the command is tracing its links, thus producing an error message.

If there are no entries in the queue, SDA displays this message:


The queue is empty 


Examples

#1

SDA>  VALIDATE QUEUE/SELF_RELATIVE IOC$GQ_POSTIQ
Queue is complete, total of 159 elements in the queue
      

This example validates the self-relative queue IOC$GQ_POSTIQ. The validation is successful and determines that there are 159 IRPs in the list.

#2

SDA> validate queue/quad FFFFFFFF80D0E6CO/list
Entry      Address               Flink                   Blink
-----      -------               ------                  -----
Header     FFFFFFFF80D0E6CO      FFFFFFFF80D03780        FFFFFFFF80D0E800
    1.     FFFFFFFF80D0E790      FFFFFFFF80D0E7CO        FFFFFFFF80D0E6C0
    2.     FFFFFFFF80D0E800      FFFFFFFF80D0E6C0        FFFFFFFF80D0E7C0
Queue is complete, total of 3 elements in the queue
      

This example shows the validation of quadword elements in a list.

#3

SDA> validate queue/sing exe$gl_nonpaged+4
Queue is zero-terminated, total of 95 elements in the queue
      

This example shows the validation of singly linked elements in the queue. The forward link of the final element is zero instead of being a pointer back to the queue header.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
6549PRO_018.HTML