hp.com home products and services support and drivers solutions how to buy
cd-rom home
End of Jump to page title
HP OpenVMS systems
documentation

Jump to content


HP OpenVMS System Analysis Tools Manual

HP OpenVMS System Analysis Tools Manual


Previous Contents Index


SHOW PFN_DATA

Displays information that is contained in the page lists and PFN database.

Format

SHOW PFN_DATA {[/qualifier]|pfn [{:end-pfn|;length}]}

or

SHOW PFN_DATA/MAP


Parameters

pfn

Page frame number (PFN) of the physical page for which information is to be displayed.

end-pfn

Last PFN to be displayed. When you specify the end-pfn parameter, a range of PFNs is displayed. This range starts at the PFN specified by the pfn parameter and ends with the PFN specified by the end-pfn parameter.

length

Length of the PFN list to be displayed. When you specify the length parameter, a range of PFNs is displayed. This range starts at the PFN specified by the pfn parameter and contains the number of entries specified by the length parameter.

Qualifiers

/ADDRESS=<PFN-entry-address>

Displays the PFN database entry at the address specified. The address specified is rounded to the nearest entry address, so if you have an address that points to one of the fields of the entry, the correct database entry will still be found.

/ALL

Displays the following lists:
Free page list
Zeroed free page list
Modified page list
Bad page list
Untested page list
Private page lists, if any
Per-color or per-RAD free and zeroed free page lists
Entire database in order by page frame number

This is the default behavior of the SHOW PFN_DATA command. SDA precedes each list with a count of the pages it contains and its low and high limits.

/BAD

Displays the bad page list. SDA precedes the list with a count of the pages it contains, its low limit, and its high limit.

/COLOR [={n|ALL}]

Displays data on page coloring. Table 4-13 shows the command options available with this qualifier.

Table 4-13 Command Options with the /COLOR and /RAD Qualifiers
Options Meaning
/COLOR 1 with no value Displays a summary of the lengths of the color 1 page lists for both free pages and zeroed pages.
/COLOR= n where n is a color number Displays the data in the PFN lists (for the specified color) for both free and zeroed pages.
/COLOR=ALL Displays the data in the PFN lists (for all colors), for both free and zeroed free pages.
/COLOR= n or /COLOR=ALL with /FREE or /ZERO Displays only the data in the PFN list (for the specified color or all colors), for either free or zeroed free pages as appropriate. The qualifiers /BAD and /MODIFIED are ignored with /COLOR= n and /COLOR=ALL.
/COLOR without an option specified together with one or more of /FREE, /ZERO, /BAD, or /MODIFIED Displays the color summary in addition to the display of the requested list.


1Wherever COLOR is used in this table, RAD is equally applicable, both in the qualifier name and the meaning.

For more information on page coloring, see HP OpenVMS System Management Utilities Reference Manual: M--Z.

/FREE

Displays the free page list. SDA precedes the list with a count of the pages it contains, its low limit, and its high limit.

/MAP

Displays the contents of the PFN memory map. On platforms that support it, the I/O space map is also displayed. You cannot combine the /MAP qualifier with any parameters or other qualifiers.

/MODIFIED

Displays the modified page list. SDA precedes the list with a count of the pages it contains, its low limit, and its high limit.

/PRIVATE [=address]

Displays private PFN lists. If no address is given, all private PFN lists are displayed; if an address is given, only the PFN list whose head is at the given address is displayed.

/RAD [={n|ALL}]

Displays data on the disposition of pages among the Resource Affinity Domains (RADs) on applicable systems. See Table 4-13 for the command options available with this qualifier.

/SYSTEM

Displays the entire PFN database in order by page frame number, starting at PFN 0000.

/UNTESTED

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

/ZERO

Displays the contents of the zeroed free page list.

Description

For each page frame number it displays, the SHOW PFN_DATA command lists information used in translating physical page addresses to virtual page addresses.

The display contains two or three lines: Table 4-14 shows the fields in line one, Table 4-15 shows the fields in line two, and Table 4-16 shows the fields in line three, displayed only if relevant (page table page or non-zero flags).

Table 4-14 PFN Data---Fields in Line One
Item Contents
PFN Page frame number.
DB ADDRESS Address of PFN structure for this page.
PT PFN PFN of the page table page that maps this page.
BAK Place to find information on this page when all links to this PTE are broken: either an index into a process section table or the number of a virtual block in the paging file.
FLINK Forward link within PFN database that points to the next physical page (if the page is on one of the lists: FREE, MODIFIED, BAD, or ZEROED); this longword also acts as the count of the number of processes that are sharing this global section.
BLINK Backward link within PFN database (if the page is on one of the lists: FREE, MODIFIED, BAD, or ZEROED); also acts as an index into the working set list.
SWP/BO Either a swap file page number or a buffer object reference count, depending on a flag set in the page state field.
LOC Location of the page within the system. Table 4-12 shows the possible locations with their meaning.

Table 4-15 PFN Data---Fields in Line Two
Item Contents
(Blank) First field of line two is left blank.
PTE ADDRESS Virtual address of the page table entry that describes the virtual page mapped into this physical page. If no virtual page is mapped into this physical page then "<no backpointer>" is displayed, and the next three fields are left blank.
PTE Type If a virtual page is mapped into this physical page, a description of the type of PTE is provided across the next three fields: one of "System-space PTE", "Global PTE (section index nnnn)", "Process PTE (process index nnnn)". If no virtual page is mapped into this physical page, these fields are left blank.
REFCNT Number of references being made to this page.
PAGETYP Type of physical page. See Table 4-11 for the types of physical pages and their meanings.

Table 4-16 PFN Data---Fields in Line Three
Item Contents
COUNTS If the page is a page table page, then the contents of the PRN$W_PT_VAL_CNT, PFN$W_PT_LCK_CNT, and PFN$W_PT_WIN_CNT fields are displayed. The format is as follows:

VALCNT = nnnn LCKCNT = nnnn WINCNT = nnnn

FLAGS The flags in text form that are set in page state. Table 4-17 shows the possible flags and their meaning.

Table 4-17 Flags Set in Page State
Flag Meaning
BUFOBJ Set if any buffer objects reference this page
COLLISION Indicates an empty collision queue when page read is complete
BADPAG Indicates a bad page
RPTEVT Indicates a report event on I/O completion
DELCON Indicates a delete PFN when REFCNT=0
MODIFY Indicates a dirty page (modified)
UNAVAILABLE Indicates PFN is unavailable; most likely a console page
SWPPAG_VALID Indicated swap file page number is valid
TOP_LEVEL_PT Level one (1) page table
SLOT Page is part of process's balance set
SHARED Shared memory page
ZEROED Shared memory page that has been zeroed


Examples

#1

SDA> SHOW PFN_DATA/MAP
System Memory Map 
----------------- 
 
Start PFN   PFN count   Flags 
---------   ---------   ----- 
00000000    000000FA    0009  Console Base 
000000FA    00003306    000A  OpenVMS Base 
00003C00    000003FF    000A  OpenVMS Base 
00003FFF    00000001    0009  Console Base 
00003400    00000800    0010  Galaxy_Shared
      

This example shows the output when you invoke the SHOW PFN/MAP command.

#2

SDA> SHOW PFN 598:59f
 
PFN data base for PFN range 
--------------------------- 
 
       PFN           DB  ADDRESS         PT PFN              BAK              FLINK             BLINK       SWP/BO   LOC 
                     PTE ADDRESS                                                                            REFCNT PAGETYP 
----------------- ----------------- ----------------- ----------------- ----------------- ----------------- ------ ------- 
00000000.00000598 FFFFF802.06C16600 00000000.000001D7 FFFFFFFF.84D6F700 00000000.00000000 00000000.00000000  ----  ACTIVE 
                  FFFFF801.FFD072A0 System-space PTE                                                         0001  SYSTEM 
 
00000000.00000599 FFFFF802.06C16640 00000000.00000000 00000000.0001DBD9 00000000.0001DBD9 00000000.000081B6  ----  FRELST 
                  <no  backpointer>                                                                          0000  SYSTEM 
 
 
00000000.0000059A FFFFF802.06C16680 00000000.00000565 FF000000.00000000 00000000.00000000 00000000.000000D4  ----  ACTIVE 
                  000007FF.FF700000 Process PTE (process index 001A)                                         0001  PROCESS 
                  FLAGS  = Modify 
 
00000000.0000059B FFFFF802.06C166C0 00000000.0000493A 000000FD.00010000 00000000.00000003 00000000.00000000  ----  ACTIVE 
                  FFFFF802.0F641680 Global PTE (section index 00FD)                                          0001  GLOBAL 
 
00000000.0000059C FFFFF802.06C16700 00000000.000005E3 FF000000.00000000 00000000.00000000 00000000.00000136  ----  ACTIVE 
                  000007FE.00001C30 Process PTE (process index 000F)                                         0001  PROCESS 
 
00000000.0000059D FFFFF802.06C16740 00000000.0000059D 00000000.8705A000 00000000.00000002 00000000.00000001  ----  ACTIVE 
                  000007FF.FFFFFFF8 Process PTE (process index 0005)                                         0001  PPT(L1) 
                  VALCNT = 0002     LCKCNT = FFFF     WINCNT = FFFF     FLAGS  = Modify,Top_Level_PT 
 
00000000.0000059E FFFFF802.06C16780 00000000.000001D7 FFFFFFFF.84D6F700 00000000.00000000 00000000.00000000  ----  ACTIVE 
                  FFFFF801.FFD07420 System-space PTE                                                         0001  SYSTEM 
 
00000000.0000059F FFFFF802.06C167C0 00000000.000001D7 FFFFFFFF.84D6F700 00000000.00000000 00000000.00000000  ----  ACTIVE 
                  FFFFF801.FFD07428 System-space PTE                                                         0001  SYSTEM 
      

This example shows the output from SHOW PFN for a range of pages.


SHOW POOL

Displays the contents of the nonpaged dynamic storage pool, the bus-addressable pool, and the paged dynamic storage pool. You can display part or all of each pool. If you do not specify a range or qualifiers, the default is SHOW POOL/ALL. Optionally, you can display the pool history ring buffer and pool statistics.

Format

SHOW POOL {range|/ALL (d)|/BAP |/NONPAGED|/PAGED} [/BRIEF|/CHECK|/FREE|/HEADER
|/MAXIMUM_BYTES [=n]|/SUMMARY |/TYPE=packet-type
|/SUBTYPE=packet-type|/UNUSED]
|[/RING_BUFFER]
|[/STATISTICS [= ALL] [{/NONPAGED |/BAP|/PAGED}]]


Parameter

range

Range of virtual addresses in pool that SDA is to examine. You can express a range using the following syntax:
m:n Range of virtual addresses in pool from m to n
m;n Range of virtual addresses in pool starting at m and continuing for n bytes

Qualifiers

/ALL

Displays the entire contents of the dynamic storage pool, except for those portions that are free (available). This is the default behavior of the SHOW POOL command.

/BAP

Displays the contents of the bus-addressable dynamic storage pool currently in use.

/BRIEF

Displays only general information about the dynamic storage pool and its addresses.

/CHECK

Checks all free packets for POOLCHECK-style corruption, in exactly the same way that the system does when generating a POOLCHECK crash dump.

/FREE

Displays the entire contents, both allocated and free, of the specified region or regions of pool. Use the /FREE qualifier with a range to show all of the used and free pool in the given range.

/HEADER

Displays only the first 16 bytes of each data packet found within the specified region or regions of pool.

/MAXIMUM_BYTES [=n]

Displays only the first n bytes of a pool packet; if you specify /MAXIMUM_BYTES without a value, the default is 64 bytes.

/NONPAGED

Displays the contents of the nonpaged dynamic storage pool currently in use.

/PAGED

Displays the contents of the paged dynamic storage pool currently in use.

/RING_BUFFER

Displays the contents of the nonpaged pool history ring buffer if pool checking has been enabled. Entries are displayed in reverse chronological order, that is, most to least recent.

/STATISTICS [= ALL]

Displays usage statistics about each lookaside list and the variable free list. For each lookaside list, its queue header address, packet size, the number of packets, attempts, fails, and deallocations are displayed. (If pool checking is disabled, the attempts, fails, and deallocations are not displayed.) For the variable free list, its queue header address, the number of packets and the size of the smallest and largest packets are displayed. You can further qualify /STATISTICS by using either /NONPAGED, /BAP, or /PAGED to display statistics for a specified pool area. (Paged pool has no lookaside lists; therefore, only variable free list statistics are displayed.)

If you specify /STATISTICS without the ALL keyword, only active lookaside lists are displayed. Use /STATISTICS = ALL to display all lookaside lists.

/SUBTYPE=packet-type

Displays the packets within the specified region or regions of pool that are of the indicated packet-type. For information on packet-type, see packet-type in the Description section.

/SUMMARY

Displays only an allocation summary for each specified region of pool.

/TYPE=packet-type

Displays the packets within the specified region or regions of pool that are of the indicated packet-type. For information on packet-type, see packet-type in the Description section.

/UNUSED

Displays only variable free packets and lookaside list packets, not used packets.

Description

The SHOW POOL command displays information about the contents of any specified region of dynamic storage pool. There are several distinct display formats, as follows:

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 you specify a range, type, or subtype, then the pool layout display is not generated, and the pool summary display is a summary only for the range, type, or subtype, and not for the entire pool.

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 because 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 packet-type is given by name. Table 4-18 shows several examples.

Table 4-18 /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


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 you can specify a pool packet type and a range of addresses.


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.


Previous Next Contents Index