 |
» |
|
|
|
The commands provided by DAT presuppose a solid background in MPE XL internals. To help reduce the need for every dump analysis engineer to possess detailed knowledge of MPE XL, a group of dump analysis macros have been developed to assist field and lab support personnel in the task of dump analysis. This group of macros (MPEXL OS DAT MACROS, HP30357 A) is referred to as "The DAT Macros." An external specification document and quick reference guide is available from HP support organizations. The DAT program, supported macros, (MOS), and symbolic data type files (SYMOS, VAMOS)are distributed in the TELESUP account. How to Get Started with the DAT Macros |  |
Using the DAT macro package is the simplest way to analyze a dump. Additional documentation is required to make use of the macros. Contact your Response Center for further information.
To use this package, log on to the TELESUP account in the USER group. The TELESUP account is where the DAT program, the macro files, and the symbolic data type files are located. The first step is to start the DAT program and invoke the DAT Macros startup macro. Entering "macstart" loads Macros and symbols.
Examples |  |
Some examples of DAT macros follow. Please note that these macros are dynamic. They will change and be improved. The output from these examples may differ from what future macros produce.
 |  |  |  |  | TIP:
:DAT
DAT XL A.00.00 Copyright Hewlett-Packard Co. 1987. All rights reserved.
$e ($0) nmdat > macstart
Welcome to the DAT Macro facility.
Enter the dump file set name to process: d7850.dumps
Dump Title: System abort 1019 subsys 101 System Halt 7, $03FB
Last PIN : 77
MPE XL HP31900a.21.19 USER VERSION: X.13.20
(UNWIND - Unwinding Out Of Lockup Loop)
(UWLOCKUP - HALT $7,$3fb = #7,#1019)
OS Symbol file SYMOS.OSA20.TELESUP is now open.
Next line maps VAMOS.OSA20.TELESUP
1 VAMOS.OSA20.TELESUP 10000.0 Bytes = 1bd0
WARNING! OS Build ID Timestamps in System Globals and SYMOS do NOT match.
OS Build ID Timestamp in System Globals = 1989050816
OS Build ID Timestamp in SYMOS File = 1989040717
OS Macros restored from file MOS.OSA20.TELESUP.
OS DAT MACROS HP30357 A.00.27 Copyright Hewlett-Packard Co. 1987
|
|  |  |  |  |
At this point, the dump has been opened and all of the DAT macros have been loaded. This example displays the basic state of the machine at the time it was dumped.  |  |  |  |  | TIP:
$11e ($77) nmdat > machine_state
(UNWIND - Unwinding Out Of Lockup Loop)
(UWLOCKUP - HALT $7,$3fb = #7,#1019)
HP3000 Series 930 With Processor Revision 0.
SYSTEM ABORT #1019 FROM SUBSYSTEM #101 (Memory Manager)
The MEMORY MANAGER was unable to access the I/O notification port.
MPE/XL VERSION: A21.19 CPU: PROCESS_RUNNING
SYSTEM CONSOLE AT LDEV #20
CURRENT REGISTERS:
RO =00000000 c0000000 002d5838 c0000000 R4 =00000002 4027637c 00000001 40276310
R8 =40276370 20000000 ffffffff 00000001 R12=00000001 00000b3a fffffd88 00000000
R16=0000000a ffffffff 00000000 809766bc R20=00000001 00000e00 ffffffff 00000000
R24=00000000 00000000 03fb0065 c0202008 R28=00000001 40276370 40276600 002d5838
IPSW=0004ff0b=jthlnxbCvmrQpDI PRIV=0 SAR=0002 PCQF=a.196eb8 a.196ebc
SRT=0000000a 000002e4 0000000a 00000000 SR4=0000000a 000002e4 0000000b 0000000a
TRO=00814200 00844200 00000000 40276600 TR4=c0000000 00002058 0000002e 00000000
PID1=0280=0140(W) PID2=07de=03ef(W) PID3=0000=0000(W) PID4=0000=0000(W)
RCTR=00000000 ISR=0000000a IOR=00000000 IIR=00020005 IVA=00169800 ITMR=c931977a
EIEM=ffffffff EIRR=80000000 CCR=0080
(UNWIND - Unwinding Out Of Lockup Loop)
(UWLOCKUP - HALT $7,$3fb=#7,#1019)
|
|  |  |  |  |
The following example shows the dispatcher's state and queues:  |  |  |  |  | TIP:
$11f ($77) nmdat > process_dispatcher
Processes on the Dispatch Queue
-------------------------------
===== DISPATCHER INFORMATION FOR A PROCESS =====
S
y
s
p
r
o
c PIN # State Wait Event Pri Class Blocked Reason
- ----- ----- ---------- --- ----- --------------
$77 EXECUTING Not Waiting $1aff DS NOT_BLOCKED
$2d READY Not Waiting $1aff DS MEM_MGR_PREFETCH
$6f READY Not Waiting $1aff DS MEM_MGR_PREFETCH
$72 READY Not Waiting $1aff DS MEM_MGR_PREFETCH
$40 READY Not Waiting $1aff DS MEM_MGR_PREFETCH
$39 READY Not Waiting $1aff DS NM_CODE_PAGE_FAULT
$47 READY Not Waiting $1aff DS USER_TO_DEBUG_MSG
$8B READY Not Waiting $1aff DS NOT_BLOCKED
AS BASEPRI= $70ff LIMPRI= $4e7f
BS BASEPRI= $4dff LIMPRI= $34ff
CS BASEPRI= $33ff LIMPRI= $1bff MINQUANTUM= $186a00 MAXQUANTUM= $f42400
DS BASEPRI= $1aff LIMPRI= $8ff
ES BASEPRI= $7ff LIMPRI= $17f
Processor State : PROCESS_RUNNING
Disp Disable PIN : $7ffd Disp Disable Count : $0
Active PIN : $77 Active Pri : $1aff
Pending PIN : $7ffd Pending Pri : $0
Total of #8 processes
|
|  |  |  |  |
The following example shows all the configured devices on the system. This macro was terminated with a ControlY before it reached normal completion.  |  |  |  |  | TIP:
$121 ($77) nmdat > config_device_ldev
LDEV# TYPE LDM Port LDM PDA DM Port DM PDA
---- ---- -------- ------- ------- ------
1 IO-DISC ffffffca b.80429b00 ffffffcb b.80140240
2 IO-DISC ffffffa2 b.8042b180 ffffffa3 b.801409c0
3 IO-DISC ffffffa0 b.8042c800 ffffffa1 b.80141140
4 IO-DISC ffffff9e b.8042de80 ffffff9f b.801418c0
5 IO_TERMINAL fffffec6 b.80446e80 0 0.0
6 IO_PRINTER ffffff88 b.8043a900 ffffff89 0.0
7 IO_TAPE ffffff91 b.80436580 ffffff92 b.80fe8780
8 IO_TAPE ffffff93 b.80434f00 ffffff94 b.80fe8140
9 IO_TERMINAL fffffec5 b.80447dc0 0 0.0
10 IO_TAPE ffffff8f b.80437c00 ffffff90 b.80fe8dc0
11 IO_TERMINAL fffffec4 b.80448d00 0 0.0
12 IO_TERMINAL fffffec3 b.80449c40 0 0.0
13 IO_TERMINAL fffffec2 b.8044ab80 0 0.0
14 IO_DISC ffffff9c b.8042f500 ffffff9d b.80142040
15 IO_DISC ffffff9a b.80430b80 ffffff9b b.801427c0
16 IO_DISC ffffff98 b.80432200 ffffff99 b.80142f40
17 IO_DISC ffffff96 b.80433880 ffffff97 b.801436c0
18 IO_TERMINAL fffffec1 b.8044bac0 0 0.0
19 IO_SERIAL_PRINTER ffffff8d b.80439280 ffffff8e a.c0c38140
20 IO_TERMINAL ffffffcd b.80428480 ffffffce b.80080240
21 IO_TERMINAL fffffec0 b.8044ca00 0 0.0
22 IO_TERMINAL fffffebf b.8044d940 0 0.0
23 IO_TERMINAL fffffebe b.8044e880 0 0.0
24 IO_TERMINAL fffffebd b.8044f7c0 0 0.0
100 IO_TERMINAL ffffff50 b.8043bf80 ffffff51 a.cc810240
101 IO_TERMINAL ffffff4b b.8043c5c0 ffffff4c a.cc810cc0
102 IO_TERMINAL ffffff46 b.8043cc00 ffffff47 a.cc811740
103 IO_TERMINAL ffffff41 b.8043d240 ffffff42 a.cc8121c0
104 IO_TERMINAL ffffff3c b.8043d880 ffffff3d a.cc812c40
105 IO_TERMINAL ffffff37 b.8043dec0 ffffff38 a.cc8136c0
108 IO_TERMINAL ffffff32 b.8043e500 ffffff33 a.cc814140
109 IO_TERMINAL ffffff2d b.8043eb40 ffffff2e a.cc814bc0
110 IO_TERMINAL ffffff28 b.8043f180 ffffff29 a.cc815640
Control-Y encountered
|
|  |  |  |  |
The following example shows all of the jobs and sessions on the system.
 |  |  |  |  | TIP:
JSMAIN
JOBNUM STATE IPRI JIN JLIST INTRODUCED JOB NAME PIN
#S20 EXEC 8 108 108 135 15:47 DAVE,MANAGER.SYS,PUB $23
#s17 EXEC 8 20 20 135 14:37 DAVE,MANAAGER.SYS,PUB $20
#J7 EXEC 8 10S 12 135 13:43 PEGASUS,SMGR.TEST,PEGASUS $21
#J147 EXEC 8 10S 12 135 16:19 TPXRI16J,MGR.FVSTEST,TP $4c
#J10 EXEC 8 10S 12 135 13:43 PEGASUS,SMGR.TEST,PEGASUS $35
#J34 EXEC 8 10S 12 135 13:48 PEGASUS,SMGR.TEST,PEGASUS $42
#J22 EXEC 8 10S 12 135 13:46 PEGASUS,SMGR.TEST,PEGASUS $27
#J52 EXEC 8 10S 12 135 13:52 PEGASUS,SMGR.TEST,PEGASUS $67
#J28 EXEC 8 10S 12 135 13:47 PEGASUS,SMGR.TEST,PEGASUS $48
#J31 EXEC 8 10S 12 135 13:47 PEGASUS,SMGR.TEST,PEGASUS $4e
#J37 EXEC 8 10S 12 135 13:49 PEGASUS,SMGR.TEST,PEGASUS $34
#J40 EXEC 8 10S 12 135 13:49 PEGASUS,SMGR.TEST,PEGASUS $53
#J43 EXEC 8 10S 12 135 13:50 PEGASUS,SMGR.TEST,PEGASUS $4d
#J154 EXEC 8 10S 12 135 16:19 PHCRP13J,MGR.FVSTEST,PH $61
#J155 EXEC 8 10S 12 135 16:20 CICAL20J,MGR.FVSTEST,CI $8c
#J61 EXEC 8 10S 12 135 13:54 PEGASUS,SMGR.TEST,PEGASUS $65
#J55 EXEC 8 10S 12 135 13:53 PEGASUS,SMGR.TEST,PEGASUS $6c
#58 EXEC 8 10S 12 135 13:54 PEGASUS,SMGR.TEST,PEGASUS $5c
#J157 EXEC 8 10S 12 135 16:20 ACALG12J,MGR.FVSTEST,AC $44
#S8 EXEC 8 122 122 35 13:55 MGR.FVSTEST,PUB $6d
20 JOBS:
0 INITIALIZING; 0 INTRODUCED
0 WAIT
20 EXEC; INCL 3 SESSIONS
0 SCHEDULED; 0 SUSPENDED
0 TERMINATING; 0 ERROR STATE
JOBFENCE= 7; JLIMIT= 60; SLIMIT= 60
|
|  |  |  |  |
The above examples give a hint of the power and convenience of using the DAT macros package for dump analysis. There are many more macros; they format an operating system table, print process information, display resource allocation, help find deadlocks, and so on.
|