|
|
1.1 root 1:
2:
3:
4: ANALYZE(8) UNIX Programmer's Manual ANALYZE(8)
5:
6:
7:
8: NAME
9: analyze - Virtual UNIX postmortem crash analyzer
10:
11: SYNOPSIS
12: /etc/analyze [ -s swapfile ] [ -f ] [ -m ] [ -d ] [ -D ] [
13: -v ] corefile [ system ]
14:
15: DESCRIPTION
16: _A_n_a_l_y_z_e is the post-mortem analyzer for the state of the
17: paging system. In order to use _a_n_a_l_y_z_e you must arrange to
18: get a image of the memory (and possibly the paging area) of
19: the system after it crashes (see _c_r_a_s_h(8V)).
20:
21: The _a_n_a_l_y_z_e program reads the relevant system data struc-
22: tures from the core image file and indexing information from
23: /vmunix (or the specified file) to determine the state of
24: the paging subsystem at the point of crash. It looks at
25: each process in the system, and the resources each is using
26: in an attempt to determine inconsistencies in the paging
27: system state. Normally, the output consists of a sequence
28: of lines showing each active process, its state (whether
29: swapped in or not), its _p_0_b_r, and the number and location of
30: its page table pages. Any pages which are locked while raw
31: i/o is in progress, or which are locked because they are
32: _i_n_t_r_a_n_s_i_t are also printed. (Intransit text pages often
33: diagnose as duplicated; you will have to weed these out by
34: hand.)
35:
36: The program checks that any pages in core which are marked
37: as not modified are, in fact, identical to the swap space
38: copies. It also checks for non-overlap of the swap space,
39: and that the core map entries correspond to the page tables.
40: The state of the free list is also checked.
41:
42: Options to _a_n_a_l_y_z_e:
43:
44: -D causes the diskmap for each process to be printed.
45:
46: -d causes the (sorted) paging area usage to be printed.
47:
48: -f which causes the free list to be dumped.
49:
50: -m causes the entire coremap state to be dumped.
51:
52: -v (long unused) which causes a hugely verbose output for-
53: mat to be used.
54:
55: In general, the output from this program can be confused by
56: processes which were forking, swapping, or exiting or hap-
57: pened to be in unusual states when the crash occurred. You
58: should examine the flags fields of relevant processes in the
59: output of a _p_s_t_a_t(8) to weed out such processes.
60:
61:
62:
63: Printed 7/26/87 April 27, 1985 1
64:
65:
66:
67:
68:
69:
70: ANALYZE(8) UNIX Programmer's Manual ANALYZE(8)
71:
72:
73:
74: It is possible to look at the core dump with _a_d_b if you do
75:
76: adb -k /vmunix /vmcore
77:
78: FILES
79: /vmunix default system namelist
80:
81: SEE ALSO
82: adb(1), ps(1), crash(8V), pstat(8)
83:
84: AUTHORS
85: Ozalp Babaoglu and William Joy
86:
87: DIAGNOSTICS
88: Various diagnostics about overlaps in swap mappings, missing
89: swap mappings, page table entries inconsistent with the core
90: map, incore pages which are marked clean but differ from
91: disk-image copies, pages which are locked or intransit, and
92: inconsistencies in the free list.
93:
94: It would be nice if this program analyzed the system in gen-
95: eral, rather than just the paging system in particular.
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129: Printed 7/26/87 April 27, 1985 2
130:
131:
132:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.