1 03/26/85 mc_trace, mct
2
3 Syntax as a command: mct path -control_args
4
5
6 Function: gives a snapshot of machine conditions and history registers
7 resulting from hardware faults and interrupts incurred while
8 executing another Multics command or subroutine.
9
10
11 Arguments:
12 path
13 is the absolute or relative pathname of the segment that is to be
14 traced.
15
16
17 Control arguments:
18 -all
19 captures machine conditions and history registers for every fault
20 and interrupt that occurs in your process. This control argument
21 cannot be used with -hc or the path argument.
22 -brief, -bf
23 suppresses printing the "-->" prompt.
24
25
26 -buffer N, -buf N
27 sets the machine condition trace buffer size to N, where N is a
28 decimal integer value from 1 to 16, and represents the buffer size
29 in units of 1024 words 1K. The default buffer size is 5K words.
30 -hc SEG
31 captures machine conditions and history registers for faults and
32 interrupts that occur in the hardcore segment SEG while your process
33 is in execution. SEG can be a hardcore segment name or number.
34 This control argument cannot be used with -all or the path argument.
35
36
37 Notes: This command initiates the segment specified by the path
38 argument, and creates the machine condition trace buffer in your
39 process directory. The number of machine conditions and history
40 register sets that can be stored is directly related to the size of the
41 trace buffer. There is an approximate 8 to 1 ratio of machine
42 conditions to history registers e.g. in a 5K buffer there would be
43 storage for 79 sets of machine conditions and 10 sets of history
44 registers allowing room for a trace buffer header. The trace buffer
45 is temporarily "wired" i.e. the segment remains in main storage and
46 is not subject to removal by the dynamic paging mechanism. The
47 hardcore snapshot or trace mechanism is then enabled and mc_trace goes
48 into a request loop after printing "-->" as your prompt on the
49 error_output switch. The valid user reponses while in this request
50 loop are as follows:
51
52
53 .
54 prints out the command name "mc_trace" on the user_output switch.
55 .q
56 turns the hardcore snapshot mechanism off, unwires the machine
57 condition buffer, and returns to Multics command level.
58 calls the Multics command processor and executes <command> as a Multics
59 command e.g. ..who.
60 .rpt n <command>
61 calls the Multics command processor to loop n times, executing the
62 specified Multics command <command>; n is an integer from 1 to
63 99999999 e.g. .rpt 10 who.
64
65
66 .pmc m n
67 displays machine conditions in octal starting with machine condition
68 set m for n sets. The integer m therefore represents a negative
69 index from the last set of machine conditions stored e.g. the
70 request ".pmc 8 2" would be interpreted to mean "display two sets
71 of machine conditions starting from the last machine conditions
72 stored at position 8". If n is not specified, then all machine
73 conditions starting at m to the last machine conditions stored are
74 displayed. If neither m nor n are specified, all sets of machine
75 conditions are displayed.
76 .pmci m n
77 same as .pmc above except that the machine conditions are displayed
78 in interpreted format.
79
80
81 .pscu m n
82 same as .pmc above except that only the System Control Unit SCU
83 data for the specified number of machine conditions is printed,
84 displayed in interpreted format.
85 .hr m n
86 displays history registers in octal, starting with history register
87 set m for n sets. The variables m and n are defined as in .pmc
88 above.
89 .hrou m n
90 same as .hr above except that only the Operations Unit OU history
91 register is displayed in octal.
92 .hrcu m n
93 same as .hr above except that only the Control Unit CU history
94 registers are displayed in octal.
95
96
97 .hrdu m n
98 same as .hr above except that only the Decimal Unit DU history
99 registers are displayed in octal.
100 .hrau m n
101 same as .hr above except that only the Appending Unit AU history
102 registers are displayed in octal.
103 .hranl m n
104 same as .hr above except that the specified number of history
105 registers are displayed in interpreted format.
106 .hrlgd
107 produces a list of abbreviations used with the .hranl request above.
108
109
110 The mc_trace command invokes a condition handler for the "any_other"
111 condition. When any unusual system condition is encountered, a message
112 indicating the condition that was raised is displayed on the
113 error_output I/O switch, and control is passed to the request loop. At
114 this time, any of the valid requests described above can be entered.
115 For further information on system conditions, refer to the Multics
116 Programmer's Reference Manual, Order No. AG91).
117
118
119 Access required: To use mc_trace, you must have re access to phcs_.