Column 1 contains the type of control block that starts at the virtual address in pool indicated in column 2. If SDA cannot interpret the block type, it displays a block type of "UNKNOWN." Column 3 lists the number of bytes (in decimal) of memory allocated to the block.
The remaining columns contain a dump of the contents of the block, in 4-longword intervals, until the block is complete. Columns 4 through 7 display, from right to left, the contents in hexadecimal; column 8 displays, from left to right, the contents in ASCII. If the ASCII value of a byte is not a printing character, SDA displays a period (.) instead.
For each region of pool it examines, the SHOW POOL command displays an allocation summary. The summary displays the range of addresses used by this region of pool, the address of the header for the free list for this region of pool, and, where applicable, the address of the array of headers for the lookaside lists for this region of pool. Following this is a 4-column table which lists, in column 2, the types of control block identified in the region and records the number of each in column 1. The last two columns represent the amount of the pool region occupied by each type of control block: column 3 records the total number of bytes, and column 4 records the percentage. The summary concludes with an indication of the number of bytes used within the particular pool region, as well as the number of bytes remaining. It provides an estimate of the percentage of the region that has been allocated.
Block-type
Each block 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 block-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 block-types have an additional subtype field (also a byte containing a value in the range of 0-255), many of which also have names associated. The block-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 block-type is given by name. Table SDA-23 shows several examples.
/TYPE and /SUBTYPE Qualifiers | Meaning |
---|---|
/TYPE = CI | All CI blocks regardless of subtype |
/TYPE = CI_MSG | All CI blocks with subtype CI_MSG |
/TYPE = MISC/SUBTYPE = 120 | All MISC blocks with subtype 120 |
/TYPE = 0/SUBTYPE = 0 | All blocks with TYPE and SUBTYPE both zero |
#1
SDA> SHOW POOL G0BADE00;260 Non-paged dynamic storage pool ------------------------------ Dump of blocks allocated from non-paged pool CIMSG FFFFFFFF.80BADE00 144 001000DA 003C0090 0000A900 00036FF0 .o........<..... D9B3001C 00000000 A0B5001D 35E60017 ...5............ 41414141 00000600 65EA0004 00000600 .......e....AAAA 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA . . . UNKNOWN FFFFFFFF.80BADE90 112 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA 41414141 41414141 41414141 41414141 AAAAAAAAAAAAAAAA . . . CIDG FFFFFFFF.80BADED0 144 807708BB 003B0090 0004D7E0 000008F0 ..........;...w. 61616161 61616161 61616161 016CE87C ..l.aaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa . . . UNKNOWN FFFFFFFF.80BADF60 64 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa . . . CIDG FFFFFFFF.80BADFA0 144 807708BB 003B0090 0003FFC0 0004B1B0 ..........;...w. 61616161 61616161 61616161 016CE94C L.l.aaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa . . . UNKNOWN FFFFFFFF.80BAE030 48 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa 61616161 61616161 61616161 61616161 aaaaaaaaaaaaaaaa Start End Length ----------------- ----------------- ----------------- FFFFFFFF.80D0E000 FFFFFFFF.80ECE000 00000000.001C0000 Free list header: FFFFFFFF.80C0593C Lookaside list header array: FFFFFFFF.80C50378 Summary of Non-Paged Pool contents ---------------------------------- 3 UNKNOWN = 176 (29%) 2 CIDG = 288 (48%) 1 CIMSG = 144 (24%) Total space used = 608 out of 608 total bytes, 0 bytes left Total space utilization = 100%
#2This example examines 608 (26016) bytes of nonpaged pool, starting at address 80BADE0016, which happens to be the starting address of the CIMSG block listed in the example's output. SDA attempts to identify allocated blocks as it proceeds through the specified region of pool, and displays an allocation summary when it completes the listing.
SDA> SHOW POOL/PAGED/HEADER Paged dynamic storage pool -------------------------- Dump of blocks allocated from paged pool RSHT FFFFFFFF.8024FE00 528 802DC710 00380210 00000000 FFFFFF80 ..........8...-. LNM FFFFFFFF.80250010 96 8015B847 00400060 802D75A0 00000000 .....u-.`.@.G... LNM FFFFFFFF.80250070 48 8015B847 01400030 802500A0 802D7400 .t-...%.0.@.G... LNM FFFFFFFF.802500A0 96 8015B847 02400060 802DC170 80250070 p.%.p.-.`.@.G... LNM FFFFFFFF.80250100 48 8015B847 00400030 802DC510 802E1B60 `.....-.0.@.G... . . .
The SHOW POOL/PAGED/HEADER command displays only the name of each block allocated from paged pool, its starting address, its size, and the first 4 longwords of its contents.
Displays those portions of the port descriptor table (PDT) that are port independent.
SHOW PORTS [/qualifier[,...]]
None.
/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.
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, after the equal sign in SDA commands.
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.
SDA> SHOW PORTS/ADDRESS=80618400 --- Port Descriptor Table (PDT) 80618400 --- Type: 03 pe Characteristics: 0000 --- Port Block 80618BC0 --- Status: 0001 authorize VC Count: 3 Secs Since Last Zeroed: 18635 SBUF Size 516 LBUF Size 1848 Next Refork 1863571 SBUF Count 9 LBUF Count 1 Forks Count 217383 SBUF Max 768 LBUF Max 384 Refork Count 0 SBUF Quo 11 LBUF Quo 1 SCS Messages 198478 SBUF Miss 9 LBUF Miss 249 VC Queue Cnt 12308 SBUF Allocs 205551 LBUF Allocs 598 TQE Received 18635 SBUFs In Use 0 LBUFs In Use 0 Timer Done 18635 Peak SBUF In Use 9 Peak LBUF In Use 2 RWAITQ Count 781 SBUF Queue Empty 0 LBUF Queue Empty 0 LDL Buf/Msg 6218 TR SBUF Queue Empty 0 No SBUF for ACK 0 Bus Addr Bus LAN Address Error Count Last Error Time of Last Error -------- --- ----------------- ----------- ---------- ----------------------- 80619280 LCL 00-00-00-00-00-00 0 806198C0 ESA AA-00-04-00-C7-FF 0 --- Virtual Circuit (VC) Summary --- VC Addr Node SCS ID Lcl ID Status Summary Last Event Time -------- -------- ------ ------ ----------------- ----------------------- 8062A240 FLAM5 65479 223/DF open,path 31-AUG-1995 17:30:17.05 8062BA40 VANDQ1 64894 222/DE open,path 31-AUG-1995 17:30:18.87 8062BEC0 ROMRDR 64515 221/DD open,path 31-AUG-1995 17:30:19.07
This example illustrates the output produced by the SHOW PORTS command for the PDT at address 80618400.
Displays the software and hardware context of any process in the balance set.
SHOW PROCESS {[process-name]|ALL|/ADDRESS=pcb_address|/ID=nn |/INDEX=nn|/SYSTEM}
[/ALL|/BUFFER_OBJECTS|/CHANNEL|/IMAGES|/LOCKS| /PAGE_TABLES|/PCB|/PHD|/PROCESS_SECTION_TABLE
[/SECTION_INDEX=id]|RDE [=id]|/REGIONS [=id]
|/REGISTERS|/RMS [=option[,...]]
|/SEMAPHORE|/SYSTEM|/THREADS|/WORKING_SET_LIST]
ALL
Shows 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 (" ").
/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:
- /PCB
- /PHD
- /REGISTERS
- /WORKING_SET_LIST
- /PROCESS_SECTION_TABLE
- /PAGE_TABLES
- /CHANNEL
- /BUFFER_OBJECTS
- /IMAGES
- /RMS
/BUFFER_OBJECTS
Displays all the buffer objects that a process has created./CHANNEL
Displays information about the I/O channels assigned to the process./IMAGES
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 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
To obtain these values for any given process, issue the SDA command SHOW SUMMARY. The /ID=nn and /INDEX=nn qualifiers can be used interchangeably.
/LOCKS
Displays the lock management locks owned by the current process.The /LOCKS qualifier produces a display similar in format to that produced by the SHOW LOCKS command. See Table SDA-12 for additional information.
/PAGE_TABLES {range|/P0 (d)|/P1|/P2|/PT| /RDE=ID|/REGIONS=id|=ALL} {/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.The /RDE=id or /REGIONS=id displays the page tables for the address range of the specified address region. When no ID is specified, 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 Displays the entire page table for the process from address zero to the end of process-private page table space by using /PAGE_TABLES=ALL. /PCB
Displays the information contained in the process control block (PCB). This is the default behavior of the SHOW PROCESS command./PHD
Lists the information included in the process header (PHD)./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./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./REGISTERS
Lists the hardware context of the process, as reflected in the process registers stored in the hardware privileged context block (HWPCB), its kernel stack, and possibly, in its PHD./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.SDA determines the structures to be displayed according to either of the following methods:
- If you provide the name of a structure or structures in the option parameter, SHOW PROCESS/RMS displays information from only the specified structures. (See Table SDA-10 for a list of keywords that may be supplied as options.)
- If you do not specify an option, SHOW PROCESS/RMS displays the current list of options as shown by the SHOW RMS command and set by the SET RMS command.
/SEMAPHORE
Displays the Inner Mode Semaphore for a multithreaded process./SYSTEM
Displays the system process control block. Use of the process-name parameter, 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. (See the description of the SET PROCESS command and Section 5 for information on how this can affect the process context---and CPU context---in which SDA commands execute.) The system PCB and process header (PHD) parallel the data structures that describe processes. They contain the system working set, global section table, global page table, and other systemwide data./THREADS
Displays the software and hardware context of all the threads associated with the current process./WORKING_SET_LIST [={ PPT|PROCESS|LOCKED|GLOBAL|MODIFIED|n}]
Displays the contents of the requested entries of the working set list for the process. If no option is specified, then all working set list entries are displayed. Table SDA-24 shows the options available with SHOW PROCESS/WORKING_SET_LIST.
Table SDA-24 Options for the /WORKING_SET_LIST Qualifier Options Results PPT Displays process page table pages. PROCESS Displays process private pages. LOCKED Displays pages locked into the process's working set. GLOBAL Displays global pages currently in the working set of the process. MODIFIED Displays working set list entries marked modified. n Displays a specific working set list entry, where n is the working set list index (WSLX) of the entry of interest.
The SHOW PROCESS command displays information about the process specified by process-name, the process specified in the /INDEX qualifier, the system process, or all processes. The SHOW PROCESS command performs an implicit SET PROCESS command under certain uses of its qualifiers and parameters, as noted previously. By default, the SHOW PROCESS command produces information about the SDA current process, as defined in Section 5.The default of the SHOW PROCESS command provides information taken from the software process control block (PCB). This is the first display provided by the /ALL qualifier and the only display provided by the /PCB qualifier. This information describes the following characteristics of the process:
- Software context
- Condition-handling information
- Information on interprocess communication
- Information on counts, quotas, and resource usage
Among the displayed information are the process PID, EPID, priority, job information block (JIB) address, and process header (PHD) address. SHOW PROCESS also describes the resources owned by the process, such as event flags and mutexes. The "State" field records the process current scheduling state; in a multiprocessing system, the display indicates the CPU ID of any process whose state is CUR.
The SHOW PROCESS/ALL command displays additional process-specific information, also provided by several of the individual qualifiers to the command.
The process header display, also produced by the /PHD qualifier, provides information taken from the PHD, which is swapped into memory when the process becomes part of the balance set. Each item listed in the display reflects a quantity, count, or limit for the process use of the following resources:
- Process memory
- The pager
- The scheduler
- Asynchronous system traps
- I/O activity
- CPU activity
The process registers display, also produced by the /REGISTERS qualifier, describes the process hardware context, as reflected in its registers.
There are two places where a process hardware context is stored:
- If the process is currently executing on a processor in the Alpha system (that is, in the CUR scheduling state), its hardware context is contained in that processor's registers. (That is, the process registers and the processor's registers contain identical values, as illustrated by a SHOW CPU command for that processor or a SHOW CRASH command if the process was current at the time of the system failure).
- If the process is not executing, its privileged hardware context is stored in the part of the PHD known as the HWPCB. Its integer register context is stored on its kernel stack. Its floating-point registers are stored in its PHD.
The process registers display first lists those registers stored in the HWPCB, kernel stack, and PHD ("Saved process registers"). If the process to be displayed is currently executing on a processor in the Alpha system, the display then lists the processor's registers ("Active registers for the current process"). In each section, the display lists the registers in the following groups:
- Integer registers (R0 through R29)
- Special-purpose registers (PC and PS)
- Stack pointers (KSP, ESP, SSP, and USP)
- Page table base register (PTBR)
- AST enable and summary registers (ASTEN and ASTSR)
- Address space number register (ASN)
The working set information and working set list displays, also produced by the /WORKING_SET_LIST qualifier, describe those virtual pages that the process can access without a page fault. After a brief description of the size, scope, and characteristics of the working set list itself, SDA displays information for each entry in the working set list as shown in Table SDA-25.
Table SDA-25 Working Set List Entry Information in the SHOW PROCESS Display Column Contents INDEX Index into the working set list at which information for this entry can be found ADDRESS Virtual address of the page that this entry describes STATUS Three columns that list the following status information:
- Page status of VALID
- Type of physical page (See Table SDA-17)
- Indication of whether the page is locked into the working set
Previous | Next | Contents | [Home] | [Comments] | [Ordering info] | [Help]
![]()
6135P011.HTM OSSG Documentation 22-NOV-1996 14:12:02.62Copyright © Digital Equipment Corporation 1996. All Rights Reserved.