1 :Info: analyze_multics: azm: 2021-09-20 analyze_multics, azm
2
3 Syntax as a command: azm -control_args
4
5
6 Function: invokes a subsystem that aids in system crash analysis. It
7 can analyze dumps created by the BCE dump command and copied into the
8 Multics hierarchy by the copy_dump command. It can also analyze
9 processes saved by the answering service after a fatal process error
10 and copied by the copy_deadproc command.
11
12
13 Control arguments:
14 -abbrev, -ab
15 enables abbreviation expansion of request lines.
16 -no_abbrev, -nab
17 does not enable abbreviation expansion of request lines. Default
18 -no_prompt
19 suppresses the prompt for request lines in the request loop.
20 -no_start_up, -nsu
21 does not execute any startup exec_com. Default
22 -profile PATH, -pf PATH
23 specifies the pathname of the profile to use for abbreviation
24 expansion. The suffix "profile" is added if necessary. This
25 control argument implies -abbrev.
26
27
28 -prompt STR
29 sets the request loop prompt to STR. The default is the ioa_ STR:
30 ^/azm^ ^d^:^2x
31 -request STR, -rq STR
32 executes STR as an azm request line before entering the request
33 loop.
34 -start_up, -su
35 executes the exec_com "start_up.azmec" upon invocation of azm. This
36 start_up exec_com is first searched for in your home directory, then
37 in your project directory >udd>Project_id, and last in >site. The
38 first exec_com found is used.
39 -quit
40 exits azm after execution of other arguments. It can be used with
41 -request.
42
43
44 List of requests:
45 absolute_address virtual-addr, absadr virtual-addr
46 translates a "virtual address" to an absolute memory address.
47 add_request_table path, arqt path
48 adds a user-defined request table in the list of request tables
49 being searched by the current azm invocation.
50 apply virtual-addr range command_line,
51 ap virtual-addr range command_line
52 extracts all or part of a segment specified by virtual-addr from
53 the selected dump and places a copy in a temporary segment. This
54 pathname is passed as the last argument in the command_line.
55
56
57 apte proc_indicator -control_args
58 displays active page table entry APTE information for processes in
59 a dump whose states match the states specified. Control arguments
60 are -all, -blocked, -count, -current, -page_tbl_lock, -ready, -run,
61 -stopped, and -wait.
62 associative_memory -control_args, am -control_args
63 displays SDW and/or PTW associative memories. Control arguments
64 are -all, -dump, -pageno, -prds, -ptw, -sdw, and -segno.
65 aste segno/segname -control_args
66 displays active segment table AST, page table, and trailer
67 information. The default displays active segment table entry
68 ASTE and page table information only. Control arguments are
69 -aste, -at, -brief, -long, -page_table, and -trailer.
70
71
72 configuration_deck, card_names -control_args,
73 cd card_names -control_args
74 displays the contents of the configuration deck in the selected
75 dump. This request works exactly like the standard pcd command,
76 except that it gets the configuration deck from the dump. Control
77 arguments are -brief, -exclude, -long, and -match.
78 display virtual-addr exp range -control_args,
79 d virtual-addr exp range -control_args
80 displays a selected portion of a segment in a dump or a saved
81 process. Control arguments are -as, -character, -instruction,
82 -long, -octal, -ptr, -pptr, -pptrx, and -ptrx.
83
84
85 display_absolute abs-addr range -control_args,
86 da abs-addr range -control_args
87 dumps an absolute memory address space in the dump. Control
88 arguments are -character, -instruction, -octal, -ptr, -pptr,
89 -pptrx, and -ptrx.
90 events -control_args, ev -control_args
91 displays significant events, in reverse chronological order, from a
92 dump. Control arguments are -last, -long, and -time.
93 history_regs hregs_specifier -control_args,
94 hregs hregs_specifier -control_args
95 displays a composite analysis or octal dump of the processor
96 history registers. The hregs specifiers are -condition, -dump,
97 -pds, and virtual-adr. The control arguments are -au -cu, -du,
98 -ou, -interpret, -octal, -no_thread, and thread.
99
100
101 list_dumps path -control_args,
102 lsd path -control_args
103 lists the dumps and/or the dead processes in the selected dump
104 directory. Control arguments are -deadproc and -fdump.
105 list_processes proc_indicator -control_args,
106 lsp proc_indicator -control_args
107 lists all known processes in the selected dump. Control arguments
108 are -all, -blocked, -count, -curent, -page_tbl_lock, -ready, -run
109 -stopped, and -wait.
110
111
112 machine_conditions mc_specifier -control_args,
113 mc mc_specifier -control_args
114 displays all or parts of machine conditions based on the given
115 pointer. The mc specifiers are -dump, -pds, -prds, and
116 virtual-addr. The control arguments are -eis, -faults, -long,
117 -mc_err, -misc, -octal, ponters, -ppr, -registers -scu, -time, and
118 -tpr.
119 page_trace -control_args,
120 pgt -control_args
121 displays the contents of the page trace table in the current
122 process data segment PDS. Control arguments are -all and -last.
123 replace segno/segname path,
124 rp segno/segname path
125 replaces the segment designated by segno/segname in the current
126 translation table with another segment designated by path.
127
128
129 scus
130 prints the memory address space in octal of each SCU from the
131 registers saved in the dump.
132 sdw
133 displays the SDWs in the current process' DSEG.
134 search virtual-addr range search_string,
135 srh virtual-addr range search_string
136 searches a segment starting at virtual-addr matching on
137 search_string.
138 segment_name arguments,
139 name arguments
140 prints the segment name, giving either a virtual address or a
141 segment number.
142
143
144 segment_number arguments,
145 number arguments
146 prints the segment number, giving either a virtual address or a
147 segment name.
148 select_deadproc name, sldp name
149 selects and translates a dead process that has been copied into
150 the Multics hierarchy by the copy_deadproc tool.
151 select_dump name -control_args,
152 sld name -control_args
153 selects and translates a dump of a system crash. Control arguments
154 are -first, -last, -next, and -previous.
155 select_process proc_indicator -control_args,
156 slp proc_indicator -control_args
157 selects a process for examination. Control arguments are -brief,
158 -cpu, -dbr, and -long.
159
160
161 set ptr_n virtual-addr
162 sets an internal temporary pointer like a CPU pointer register
163 i.e. "pr6" or "sp".
164 stack virtual-addr -control_args,
165 sk virtual-addr -control_args
166 traces a given stack. Control arguments are -arguments, -for,
167 -force, -forward, and -long.
168 syserr_log -control_args,
169 slog -control_args
170 displays all or parts of the syserr_log and syserr_data segments
171 from the dump. Control arguments are -action, -exclude, -expand,
172 -last, and -match.
173
174
175 traffic_control_queue -control_args,
176 tcq -control_args
177 displays process DBR, process state, process ID, current CPU, and
178 user ID from the traffic controller's eligible queue, as well as
179 the "process number" in the dump. Control arguments are -all and
180 -ready.
181 value ptr_ni...ptr_nn, v ptr_ni...ptr_nn,
182 value -all, v -all
183 displays the current value of one or all the temporary pointers.
184
185
186 verify_associative_memory -control_args,
187 vfam -control_args
188 performs a consistency check on the associative memories stored at
189 the time of a dump by comparing them to the appropriate entries in
190 the "dump dseg" and page tables. Control arguments are -ptw and
191 -sdw.
192 why
193 tries to find the stack that has a call to syserr_real$syserr_real
194 or call_bos$call_bos and sets the temporary pointers pr6 and prfr
195 to the stack frame.
196
197
198 List of active requests:
199 display virtual-addr exp range -control_args,
200 d virtual-addr exp range -control_args
201 returns a selected portion of a segment in a dump or a saved
202 process. Control arguments are -as, -character, -instruction,
203 -long, -octal, -ptr, -pptr, -pptrx, and -ptrx.
204 display_absolute abs-addr range -control_args,
205 da abs-addr range -control_args
206 returns an absolute memory address space in the dump. Control
207 arguments are -character, -instruction, -octal, -ptr, -pptr,
208 -pptrx, and -ptrx.
209
210
211 list_processes proc_indicator -control_args,
212 lsp proc_indicator -control_args
213 returns the process_ids meeting the control argument criteria,
214 otherwise it returns a null string. Control arguments are -all,
215 -blocked, -count, -curent, -page_tbl_lock, -ready, -run -stopped,
216 and -wait.
217 search virtual-addr range search_string,
218 srh virtual-addr range search_string
219 returns the virtual addresses matching the criteria specified.
220 segment_name arguments,
221 name arguments
222 returns the segment number, giving either a virtual address or a
223 segment name.
224
225
226 segment_number arguments,
227 number arguments
228 returns the segment number, giving either a virtual address or a
229 segment name.
230 verify_associative_memory -control_args,
231 vfam -control_args
232 returns true if any inconsistencies are found, false otherwise.
233
234
235 :hcom:
236
237
238
239 /****^ HISTORY COMMENTS:
240 1) change2021-09-20GDixon, approve2021-11-09MCR10098,
241 audit2021-11-09Swenson, install2021-11-09MR12.8-1008:
242 A) Change section titles from "List of operations" to "List of
243 requests"; and from "List of active function operations" to "List of
244 active requests".
245 END HISTORY COMMENTS */
246
247
248