 |
OpenVMS Alpha System Analysis Tools Manual
The qualifiers used on the SHOW POOL command determine which displays
are generated. The default is the pool layout display, followed by the
full pool packet display, followed by the pool summary display, these
being generated in turn for Nonpaged Pool, Bus-Addressable Pool (if it
exists in the system or dump being analyzed), and then Paged Pool.
If a range, type, or subtype is specified, then the pool layout display
is not generated, and the pool summary display is a summary only for
the range and/or type/subtype, and not for the entire pool.
Note that not all displays are relevant for all pool types. For
example, Paged Pool has no lookaside lists, so the Paged Pool
statistics display consists only of variable free pool information. And
since there is a single ring buffer for all pools, only one ring buffer
display is generated even if all pools are being displayed.
Packet-type
Each packet of pool has a type field (a byte containing a value in the
range of 0-255). Many of these type values have names associated that
are defined in $DYNDEF in SYS$LIBRARY:LIB.MLB. The packet-type
specified in the /TYPE qualifier of the SHOW POOL command can either be
the value of the pool type or its associated name.
Some pool packet-types have an additional subtype field (also a byte
containing a value in the range of 0-255), many of which also have
associated names. The packet-type specified in the /SUBTYPE qualifier
of the SHOW POOL command can either be the value of the pool type or
its associated name. However, if given as a value, a /TYPE qualifier
(giving a value or name) must also be specified. Note also that /TYPE
and /SUBTYPE are interchangeable if the packet-type is given by name.
Table 4-15 shows several examples.
Table 4-15 /TYPE and /SUBTYPE Qualifier Examples
/TYPE and /SUBTYPE Qualifiers |
Meaning |
/TYPE = CI
|
All CI packets regardless of subtype
|
/TYPE = CI_MSG
|
All CI packets with subtype CI_MSG
|
/TYPE = MISC/SUBTYPE = 120
|
All MISC packets with subtype 120
|
/TYPE = 0 or /TYPE = UNKNOWN
|
All packets with an unknown TYPE/SUBTYPE combination
|
Examples
This example shows the Nonpaged Pool portion of the default SHOW POOL
display.
2. SDA> SHOW POOL/TYPE=IPC/HEADER 8156E140:815912C0
Non-Paged Dynamic Storage Pool
------------------------------
Dump of packets allocated from Non-Paged Pool
---------------------------------------------
Packet type/subtype Start Length RAD Header contents
------------------------- -------- -------- --- -----------------------------------------------------
IPC_TDB 8156E140 00000040 00 81591180 057B0040 00000040 81591180 ..Y.@...@.{...Y.
IPC_LIST 815838C0 00009840 00 004C0200 087B9840 0057A740 8158D100 .ÑX.@§W.@.{...L.
IPC_LIST 8158D100 00001840 00 00040400 087B1840 00570F00 8158E940 @éX...W.@.{.....
IPC_LIST 8158E940 00002840 00 00140200 087B2840 0056F6C0 81591180 ..Y.ÀöV.@({.....
IPC_TPCB 81591180 00000080 00 00000000 067B0080 0056CE80 81591200 ..Y..ÎV...{.....
IPC 81591200 000000C0 00 00000000 007B00C0 0056CE00 815912C0 À.Y..ÎV.À.{.....
Summary of Non-Paged Pool contents
----------------------------------
Packet type/subtype Packet count Packet bytes Percent
--------------------------- ---------------- ---------------- --------
IPC 00000006 0000DA40 (100.0%)
IPC 00000001 000000C0 (0.3%)
IPC_TDB 00000001 00000040 (0.1%)
IPC_TPCB 00000001 00000080 (0.2%)
IPC_LIST 00000003 0000D8C0 (99.3%)
Total space used: 0000DA40 (55872.) bytes out of 00023180 (143744.) bytes
in 00000006 (6.) packets
Total space utilization: 38.9%
|
This example shows how a pool packet type and a range of addresses can
be specified.
3. SDA> SHOW POOL/STATISTICS
Non-Paged Pool statistics for RAD 00
------------------------------------
On-RAD deallocations (all RADs): 1221036
Total deallocations (all RADs): 1347991
Percentage of on-RAD deallocations: 90.6%
Variable list statistics
------------------------
Number of packets on variable list: 7
Total bytes on variable list: 3613376
Smallest packet on variable list: 256
Largest packet on variable list: 3598016
Bytes allocated from variable list: 2140480
Times pool expanded: 0
Lookaside list statistics
-------------------------
List Packets Packets Operation Allocation Allocation
Listhead address size (approx) (actual) sequence # attempts failures Deallocs
----------------- ---- ---------- ---------- ---------- ---------- ---------- ----------
FFFFFFFF.81008870 64 5 5 10057 10549 492 10062
FFFFFFFF.81008878 128 21 21 366 4881 4515 387
FFFFFFFF.81008880 192 33 33 27376 27542 166 27409
FFFFFFFF.81008888 256 4 4 8367 8476 118 8362
.
.
.
|
This example shows the Nonpaged Pool portion of the SHOW
POOL/STATISTICS display.
This example shows the output of the SHOW POOL/RING_BUFFER display.
SHOW PORTS
Displays those portions of the port descriptor table (PDT) that are
port independent.
Format
SHOW PORTS [/qualifier[,...]]
Parameters
None.
Qualifiers
/ADDRESS=pdt-address
Displays the specified port descriptor table (PDT). You can find the
pdt-address for any active connection on the system in
the PDT summary page display of the SHOW PORTS
command. This command also defines the symbol PE_PDT. The connection
descriptor table (CDT) addresses are also stored in many individual
data structures related to System Communications Services (SCS)
connections, for instance, in the path block displays of the SHOW
CLUSTER/SCS command.
/BUS=bus-address
Displays bus (LAN device) structure data.
/CHANNEL=channel-address
Displays channel (CH) data.
/DEVICE
Displays the network path description for a channel.
/MESSAGE
Displays the message data associated with a virtual circuit (VC).
/NODE=node
Shows only the virtual circuit block associated with the specific node.
When you use the /NODE qualifier, you must also specify the address of
the PDT using the /ADDRESS qualifier.
/VC=vc-address
Displays the virtual circuit data.
Description
The SHOW PORTS command provides port-independent information from the
port descriptor table (PDT) for those CI ports with full System
Communications Services (SCS) connections. This information is used by
all SCS port drivers.
Note that the SHOW PORTS command does not display similar information
about UDA ports, BDA ports, and similar controllers.
The SHOW PORTS command also defines symbols for PEDRIVER based on the
cluster configuration. These symbols include the following information:
- Virtual circuit (VC) control blocks for each of the remote systems
- Bus data structure for each of the local LAN adapters
- Some of the data structures used by both PEDRIVER and the LAN
drivers
The following symbols are defined automatically:
- VC_nodename---Example: VC_NODE1, address of the local node's
virtual circuit to node NODE1.
- CH_nodename---The preferred channel for the virtual circuit. For
example, CH_NODE1, address of the local node's preferred channel to
node NODE1.
- BUS_busname---Example: BUS_ETA, address of the local node's bus
structure associated with LAN adapter ETA0.
- PE_PDT---Address of PEDRIVER's port descriptor table.
- MGMT_VCRP_busname---Example: MGMT_VCRP_ETA, address of the
management VCRP for bus ETA.
- HELLO_VCRP_busname---Example: HELLO_VCRP_ETA, address of the HELLO
message VCRP for bus ETA.
- VCIB_busname---Example: VCIB_ETA, address of the VCIB for bus ETA.
- UCB_LAVC_busname---Example: UCB_LAVC_ETA, address of the LAN
device's UCB used for the local-area OpenVMS Cluster protocol.
- UCB0_LAVC_busname---Example: UCB0_LAVC_ETA, address of the LAN
device's template UCB.
- LDC_LAVC_busname---Example: LDC_LAVC_ETA, address of the LDC
structure associated with LAN device ETA.
- LSB_LAVC_busname---Example: LSB_LAVC_ETA, address of the LSB
structure associated with LAN device ETA.
These symbols equate to system addresses for the corresponding data
structures. You can use these symbols, or an address, in SHOW PORTS
qualifers that require an address, as for example:
SDA >SHOW PORTS/BUS=BUS_ETA
|
The SHOW PORTS command produces several displays. The initial display,
the PDT summary page, lists the PDT address, port
type, device name, and driver name for each PDT. Subsequent displays
provide information taken from each PDT listed on the summary page.
You can use the /ADDRESS qualifier to the SHOW PORTS command to produce
more detailed information about a specific port. The first display of
the SHOW PORTS/ADDRESS command duplicates the last display of the SHOW
PORTS command, listing information stored in the port's PDT. Subsequent
displays list information about the port blocks and virtual circuits
associated with the port.
Examples
#1 |
SDA > SHOW PORTS
VMScluster data structures
--------------------------
--- PDT Summary Page ---
PDT Address Type Device Driver Name
----------- ---- ------- -----------
80E2A180 pn PNA0 SYS$PNDRIVER
80EC3C70 pe PEA0 SYS$PEDRIVER
--- Port Descriptor Table (PDT) 80E2A180 ---
Type: 09 pn
Characteristics: 0000
Msg Header Size 104 Flags 0000 Message Sends 3648575
Max Xfer Bcnt 00100000 Counter CDRP 00000000 Message Recvs 4026887
Poller Sweep 21 Load Vector 80E2DFCC Mess Sends NoFP 3020422
Fork Block W.Q. 80E2A270 Load Class 60 Mess Recvs NoFP 3398732
UCB Address 80E23380 Connection W.Q. 80E4BF94 Datagram Sends 0
ADP Address 80E1BF00 Yellow Q. 80E2A2E0 Datagram Recvs 0
Max VC timeout 16 Red Q. 80E2A2E8 Portlock 80E1ED80
SCS Version 2 Disabled Q. 80FABB74 Res Bundle Size 208
Port Map 00000001
--- Port Descriptor Table (PDT) 80EC3C70 ---
Type: 03 pe
Characteristics: 0000
Msg Header Size 32 Flags 0000 Message Sends 863497
Max Xfer Bcnt FFFFFFFF Counter CDRP 00000000 Message Recvs 886284
Poller Sweep 30 Load Vector 80EDBF8C Mess Sends NoFP 863497
Fork Block W.Q. 80EC3D60 Load Class 10 Mess Recvs NoFP 886284
UCB Address 80EC33C0 Connection W.Q. 80EFF5D4 Datagram Sends 0
ADP Address 00000000 Yellow Q. 80EC3DD0 Datagram Recvs 0
Max VC timeout 16 Red Q. 80EC3DD8 Portlock 00000000
SCS Version 2 Disabled Q. 812E72B4 Res Bundle Size 0
Port Map 00000000
|
This example illustrates the default output of the SHOW PORTS command.
#2 |
SDA > SHOW PORTS/ADDRESS=80EC3C70
VMScluster data structures
--------------------------
--- Port Descriptor Table (PDT) 80EC3C70 ---
Type: 03 pe
Characteristics: 0000
Msg Header Size 32 Flags 0000 Message Sends 864796
Max Xfer Bcnt FFFFFFFF Counter CDRP 00000000 Message Recvs 887086
Poller Sweep 30 Load Vector 80EDBF8C Mess Sends NoFP 864796
Fork Block W.Q. 80EC3D60 Load Class 10 Mess Recvs NoFP 887086
UCB Address 80EC33C0 Connection W.Q. 80EFF5D4 Datagram Sends 0
ADP Address 00000000 Yellow Q. 80EC3DD0 Datagram Recvs 0
Max VC timeout 16 Red Q. 80EC3DD8 Portlock 00000000
SCS Version 2 Disabled Q. 812E72B4 Res Bundle Size 0
Port Map 00000000
Port Map 00000000
--- Port Block 80EC4540 ---
Status: 0001 authorize
VC Count: 20
Secs Since Last Zeroed: 77020
SBUF Size 824 LBUF Size 5042 Fork Count 1943885
SBUF Count 28 LBUF Count 1 Refork Count 0
SBUF Max 768 LBUF Max 384 Last Refork 00000000
SBUF Quo 28 LBUF Quo 1 SCS Messages 1154378
SBUF Miss 1871 LBUF Miss 3408 VC Queue Cnt 361349
SBUF Allocs 1676801 LBUF Allocs 28596 TQE Received 770201
SBUFs In Use 2 LBUFs In Use 0 Timer Done 770201
Peak SBUF In Use 101 Peak LBUF In Use 10 RWAITQ Count 30288
SBUF Queue Empty 0 LBUF Queue Empty 0 LDL Buf/Msg 32868
TR SBUF Queue Empty 0 Ticks/Second 10 ACK Delay 1000000
No SBUF for ACK 0 Listen Timeout 8 Hello Interval 30
Bus Addr Bus LAN Address Error Count Last Error Time of Last Error
-------- --- ----------------- ----------- ---------- -----------------------
80EC4C00 LCL 00-00-00-00-00-00 0
80EC5400 EXA 08-00-2B-17-CF-92 0
80EC5F40 FXA 08-00-2B-29-E1-40 0
--- Virtual Circuit (VC) Summary ---
VC Addr Node SCS ID Lcl ID Status Summary Last Event Time
-------- -------- ------ ------ ----------------- -----------------------
80E566C0 ARUSHA 19617 223/DF open,path 8-FEB-2001 16:01:57.58
80E98840 ETOSHA 19699 222/DE open,path 8-FEB-2001 16:01:58.41
80E98A80 VMS 19578 221/DD open,path 8-FEB-2001 16:01:58.11
.
.
.
|
This example illustrates the output produced by the SHOW PORTS command
for the PDT at address 80EC3C70.
SHOW PROCESS
Displays the software and hardware context of any process in the
balance set.
Format
SHOW PROCESS {[process-name|ALL]
|/ADDRESS=pcb_address|/ID=nn
|/INDEX=nn|/SYSTEM} [/ALL|/BUFFER_OBJECTS|/CHANNEL
|/FANDLES|/FID_ONLY|/GSTX=index|/IMAGES [=ALL]
|/INVALID_PFN [=option]|/NEXT |/NONMEMORY_PFN
[=option] |/LOCKS [/BRIEF]|/L1|/L2|/L3
|/PAGE_TABLES|/P0|/P1|/P2|/PT|/PCB |/PERSONA [=address][/RIGHTS
[/AUTHORIZED]] |/PHD|/PROCESS_SECTION_TABLE|/PST
|/PTE_ADDRESS|/RDE [=id] |/REGIONS [=id]
|/REGISTERS|/RMS [=option[,...]]|/SECTION_INDEX=n
|/SEMAPHORE|/THREADS |/WORKING_SET_LIST]
Parameters
ALL
Information about all processes that exist in the system.
process-name
Name of the process for which information is to be displayed. Use of
the process-name parameter, the /ADDRESS qualifier,
the /INDEX qualifier, or the /SYSTEM qualifier causes the SHOW PROCESS
command to perform an implicit SET PROCESS command, making the
indicated process the current process for subsequent SDA commands. You
can determine the names of the processes in the system by issuing a
SHOW SUMMARY command.
The process-name can contain up to 15 letters and
numerals, including the underscore (_) and dollar sign ($). If it
contains any other characters, you must enclose the
process-name in quotation marks (" ").
Qualifiers
/ADDRESS=pcb-address
Specifies the process control block (PCB) address of a process in order
to display information about the process.
/ALL
Displays all information shown by the following qualifiers:
/CHANNEL
/BUFFER_OBJECTS
/FANDLES
/IMAGES=ALL
/LOCKS
/PAGE_TABLES
/PCB
/PERSONA/RIGHTS
/PHD
/PROCESS_SECTION_TABLE
/REGIONS
/REGISTERS
/RMS
/SEMAPHORE
/THREADS
/WORKING_SET_LIST
/AUTHORIZED
Used with the /PERSONA/RIGHTS qualifiers. See the
/PERSONA/RIGHTS/AUTHORIZED description for the use of the /AUTHORIZED
qualifier.
/BRIEF
When used with the /LOCKS qualifier, causes SDA to display each lock
owned by the current process in brief format, that is, one line for
each lock.
/BUFFER_OBJECTS
Displays all the buffer objects that a process has created.
/CHANNEL
Displays information about the I/O channels assigned to the process.
/FANDLES
Displays the data on the process's fast I/O handles.
/FID_ONLY
When used with /CHANNEL or /PROCESS_SECTION_TABLE (/PST), causes SDA to
not attempt to translate the FID (File ID) to a file name when invoked
with ANALYZE/SYSTEM.
/GSTX=index
When used with the /PAGE_TABLES qualifier, causes SDA to display only
page table entries for the specific global section.
/IMAGES [= ALL]
For all images in use by this process, displays the address of the
image control block, the start and end addresses of the image, the
activation code, the protected and shareable flags, the image name, and
the major and minor IDs of the image. The /IMAGES = ALL qualifier also
displays the base, end, image offset, and section type for installed
resident images in use by this process.
See the OpenVMS Linker Utility Manual and the Install utility chapter in the
OpenVMS System Management Utilities Reference Manual for more information on images installed using the
/RESIDENT qualifier.
/ID=nn
/INDEX=nn
Specifies the process for which information is to be displayed by its
index into the system's list of software process control blocks (PCBs),
or by its process identification (ID). You can supply the following
values for
nn:
- The process index itself
- The process identification (PID) or extended PID longword, from
which SDA extracts the correct index. The PID or extended PID of any
thread of a process with multiple kernel threads may be specified. Any
thread-specific data displayed by SHOW PROCESS will be for the given
thread.
To obtain these values for any given process, issue the SDA command
SHOW SUMMARY/THREADS. The /ID=nn and /INDEX=nn
qualifiers can be used interchangeably.
/INVALID_PFN [=option]
See the /PAGE_TABLES qualifier description for an explanation of
/INVALID_PFN.
/L1
/L2
/L3
When used with the /PAGE_TABLES qualifier, /L1, /L2, /L3 cause SDA to
display the page table entries at the level specified. /L3 is the
default.
/LOCKS [/BRIEF]
Displays the lock management locks owned by the current process.
The /LOCKS [/BRIEF] qualifier produces a display similar in format to
that produced by the SHOW LOCK command. See also the /BRIEF qualifier
description. Also, Table 4-4 contains additional information.
/NEXT
Causes SDA to locate the next valid process in the process list and
select that process. It there are no further valid processes in the
process list, SDA returns an error.
/NONMEMORY_PFN [=option]
See the /PAGE_TABLES qualifier description for an explanation of
/NONMEMORY_PFN.
/P0
/P1
/P2
When used with the /PAGE_TABLES qualifier, /P0, /P1, /P2 cause SDA to
display only page table entries for the specified region. /P0 is the
default.
/PAGE_TABLES
The /PAGE_TABLES qualifier has the following format:
/PAGE_TABLES {range|[/P0(d)|/P1|/P2|/PT]
|/GSTX=index|/RDE=id
|/REGIONS=id
|/SECTION_INDEX=n|=ALL}
[/PTE_ADDRESS]
[/INVALID_PFN [={READONLY|WRITABLE}]
[/NONMEMORY_PFN [={READONLY|WRITABLE}]
{/L1|/L2|/L3(d)}
|
Displays the page tables of the process P0 (process), P1 (control), P2,
or PT (page table) region, or, optionally, page table entries for a
range of addresses. The page table entries at the
level specified by /L1, /L2, or /L3 (the default) are displayed.
When /RDE=id or /REGIONS=id is used with
/PAGE_TABLES, SDA displays the page tables for the address range of the
specified address region. When you do not specify an ID, the page
tables are displayed for all the process-permanent and user-defined
regions.
You can express a range using the following syntax:
m
|
Displays the single page table entry that corresponds to virtual address
m.
|
m:n
|
Displays the page table entries that correspond to the range of virtual
addresses from
m to
n.
|
m;n
|
Displays the page table entries that correspond to a range of
n bytes, starting at virtual address
m.
|
=ALL
|
Use /PAGE_TABLES=ALL to display the entire page table or the process
from address zero to the end of process-private page table space.
|
The /PTE_ADDRESS qualifier causes SDA to treat the specified range as
PTE addresses instead of virtual addresses.
The /SECTION_INDEX=n qualifier causes SDA to display only the
page table entries for the pages in the specified process section.
The /GSTX=index qualifier causes SDA to display only the page
table entries for the pages in the specified global section.
The /INVALID_PFN qualifier which is valid on platforms that supply an
I/O memory map, causes SDA to display only page table entries that map
to PFNs that are not in the system's private memory, nor in Galaxy
shared memory, nor are I/O access pages.
The /NONMEMORY_PFN qualifier, supported on all platforms, causes SDA to
display only page table entries that are neither in the system's
private memory nor in Galaxy shared memory.
Both /INVALID_PFN and /NONMEMORY_PFN qualifiers allow two optional
keywords, READONLY and WRITABLE. If neither keyword is given, all
relevant pages are displayed. If you specify READONLY, only pages
marked for no write access are displayed. If you specify WRITABLE, only
pages that allow write access are displayed. For example, SHOW PROCESS
ALL/PAGE_TABLE=ALL/INVALID_PFN=WRITABLE would display all process pages
(for all processes) whose protection allows write, but which map to
PFNs that do not belong to this system.
/PCB
Displays the information contained in the process control block (PCB).
This is the default behavior of the SHOW PROCESS command.
/PERSONA [=address]
Displays all persona security blocks (PSBs) held in the PERSONA ARRAY
of the process, and then lists selected information contained in each
initially listed PSB. The selected information includes the contents of
the following cells inside the PSB:
Flags
Reference count
Execution mode
Audit status
Account name
UIC
Privileges
Rights enabled mask
If you specify a PSB address, the above information is provided for
that specific PSB only.
/PERSONA/RIGHTS
Displays all the /PERSONA [=address] information and additional
selected information, including all the Rights and their attributes
currently held and active for each persona security block (PSB).
/PERSONA/RIGHTS/AUTHORIZED
Displays all the /PERSONA [=address] information and additional
selected information, including all the Rights and their attributes
authorized for each persona security block (PSB).
/PHD
Lists the information included in the process header (PHD).
/PPT
Is a synonym for /PAGE_TABLES.
/PROCESS_SECTION_TABLE [/SECTION_INDEX=id]
Lists the information contained in the process section table (PST). The
/SECTION_INDEX=id qualifier used with /PROCESS_SECTION_TABLE
displays the process section table entry for the specified section.
/PST
Is a synonym for /PROCESS_SECTION_TABLE.
/PT
When used with the /PAGE_TABLES qualifier, causes SDA to display the
page table entries for the page table space of the process.
/PTE_ADDRESS
When used with the /PAGE_TABLES qualifier, specifies that the range is
of PTE addresses instead of the virtual addresses mapped by the PTE.
/RDE [=id]
/REGIONS [=id]
Lists the information contained in the process region table for the
specified region. If no region is specified, the entire table is
displayed, including the process-permanent regions. The qualifiers /RDE
[=id] and /REGIONS [=id] may be used interchangeably.
When used with the /PAGE_TABLES, causes SDA to display on the page
tables for the region given or all regions.
/REGISTERS
Lists the hardware context of the process, as reflected in the process
registers stored in the hardware privileged context block (HWPCB), in
its kernel stack, and possibly, in its PHD.
/RIGHTS
Used with the /PERSONA qualifier. See the /PERSONA/RIGHTS description
for use of the /RIGHTS qualifier.
/RMS [=option[,...]]
Displays certain specified RMS data structures for each image I/O or
process permanent I/O file the process has open. To display RMS data
structures for process-permanent files, specify the PIO option to this
qualifier.
|