1 11/10/89 file_system_meters, fsm
2
3 Syntax as a command: fsm -control_args
4
5
6 Function:
7 used to meter certain storage system variables and functions.
8
9
10 Control arguments:
11 -ast
12 prints certain meters about active segment table AST usage.
13 -brief, -bf
14 generates a shortened report. Those meters not printed if -brief is
15 specified are indicated by a plus + in "Notes" below.
16 -page -pg
17 prints certain meters about paging.
18
19
20 -report_reset, -rr
21 generates a report and then performs the reset operation. The
22 report can be shortened by using the -brief control argument.
23 -reset, -rs
24 resets the metering interval for the invoking process so that the
25 interval begins at the last call with -reset specified. If -reset
26 has never been given in a process, it is equivalent to having been
27 specified at system initialization time.
28
29
30 Access required:
31 This command requires access to phcs_ or metering_gate_.
32
33
34 Notes:
35 If the file_system_meters command is given with no control arguments,
36 it prints a full report.
37
38
39 The following meters, which reflect the activity of the AST lists, are
40 printed if the -ast control argument is specified. The two columns
41 printed by this command contain the number of occurrences of the
42 specified item and the average time between occurrences.
43
44 Activations
45 is the number of segment activations
46
47 segfault
48 is the number of activations caused by segment faults; also
49 expressed as a percentage of all activations.
50
51
52 makeknown
53 is the number of activations not caused directly by segment
54 faults, but resulting from explicit calls from the makeknown_
55 routine; also expressed as a percentage of all activations.
56
57 backup
58 is the number of activations resulting from calls to
59 activate$backup_activate; also expressed as a percentage of all
60 activations.
61
62 directories
63 is the number of directories activated; also expressed as a
64 percentage of all activations
65
66
67 Deactivations
68 is the number of segment deactivations
69
70 Demand deactivate
71
72 attempts
73 is the number of deactivations explicitly requested by users.
74
75 successes
76 is the number of demand deactivations which succeeded; also
77 expressed as a percentage of attempts and as a percentage of all
78 deactivations.
79
80
81 Seg Faults
82
83 faults
84 is the number of segment faults
85
86 call
87 is the number of calls to the segment fault handler to activate a
88 segment without taking a segment fault; also expressed as a
89 percentage of segment faults.
90
91 activations
92 is the number of segment faults that resulted in an activation;
93 also expressed as a percentage of segment faults.
94
95
96 Bound Faults
97 is the number of bound faults.
98
99 + Setfaults
100 is the number of setfaults performed during segment deactivation and
101 during the handling of bound faults. Setfaults are segment faults
102 forced when dynamic segment attributes are changed e.g. access to
103 a segment is revoked by another process.
104
105 access
106 is the number of setfaults performed because the access was
107 changed on a segment; also expressed as a percentage of all
108 setfaults.
109
110
111 + ASTE Trickle
112 is the number of times the vtoce was updated from the ASTE because
113 the information in the VTOCE was noticed to have changed during ASTE
114 allocation. ASTE Trickle is a hedge against system crashes, as it
115 updates ASTEs into the VTOCEs periodically, rather than on demand.
116
117 + Steps
118 is the number of steps taken through the AST lists searching for a
119 free, usable AST entry.
120
121 + Skips
122 is the number of times an entry was skipped; also expressed as a
123 percentage of Steps.
124
125
126 + ehs
127 is the number of times an entry was skipped in the search for a
128 free, usable entry because the entry-hold-switch was on. The
129 entry-hold-switch is set for certain segments that cannot be
130 deactivated. Also expressed as a percentage of Skips.
131
132 + mem
133 is the number of times an entry was skipped because it had pages in
134 memory; also expressed as a percentage of Skips.
135
136 + init
137 is the number of times an entry was skipped to give it a grace lap
138 after all of its pages were removed from core; also expressed as a
139 percentage of Skips.
140
141
142 + Searches
143 is the number of full AST searches required because no entry was
144 readily available.
145
146 + Avg. Cost
147 is the average "cost" in I/Os of deactivations arising from full
148 searches.
149
150 Cleanups
151 is the number of calls to cleanup. The percentage of real time
152 spent in cleanup is also given.
153
154
155 Force writes
156 is the number of calls to force_write. The three following meters
157 relating to force_writes are printed only if any force_writes
158 occurred.
159
160 without pwrites
161 is the number of times force_write wrote no pages.
162
163 pages written
164 is the number of pages written by force_write.
165
166 force updatev
167 is the number of calls to update_vtoce resulting from
168 force_writes.
169
170
171 Lock AST
172 is the number of lockings of the AST.
173
174
175 The following meters provide information about AST lock contention.
176
177 AST locked
178 is the average real time during which the AST lock is held locked
179 and the percentage of the metering interval during which the AST was
180 locked. This percentage cannot exceed 100%, and the closer the 100%
181 figure is approached, the more AST lock contention becomes the
182 limiting function in system throughput.
183
184 AST lock waiting
185 is the average real time delay between an attempt to lock the AST
186 and successful locking of the AST. The total real time spent by all
187 processes waiting for the AST lock, expressed as a percentage of the
188 metering interval, is also given. This number may exceed 100% if,
189 on the average, more than one process was waiting for the AST lock.
190
191
192 The following items represent a table indexed by page table size and
193 they show the activity and use of the four AST lists.
194
195 AST Sizes
196 indicates the page table sizes being used by the system constant.
197
198 Number
199 is the number of entries of the specified size.
200
201 Need
202 is the number of entries of the specified size that were needed.
203
204
205 Steps
206 is the number of steps taken while scanning the specified list.
207
208 Ave Steps
209 is the average number of steps taken in the specified list to find a
210 usable entry in the list.
211
212 Lap Time sec
213 is the average time for the replacement algorithm to make one pass
214 over the list.
215
216
217 The following meters are printed if the -page control argument is
218 specified. The two columns printed by this command contain the number
219 of occurrences of the specified item and the average time between
220 occurrences.
221
222 Needc
223 is the number of times a frame of main memory was needed for page
224 faults process loadings etc..
225
226 Ceiling
227 is the number of times too many write requests were queued at once.
228 Not printed if zero.
229
230
231 Claim runs
232 is the number of times the page removal algorithm could not queue an
233 additional write until a previous write was completed. If the
234 average time between claim runs is less than .010 minutes, then an
235 I/O bottleneck probably exists in the system. If the value of claim
236 runs is zero, then the value is not printed.
237
238 Ring O faults
239 is the percentage of page faults that occurred while executing in
240 ring O.
241
242 PDIR faults
243 is the percentage of page faults that occur on pages of segments in
244 process directories.
245
246
247 Level 2 faults
248 is the percentage of page faults on pages of segments in directories
249 directly off the root. This is a measure of the activity of the
250 system libraries.
251
252 DIR faults
253 is the percentage of page faults on directory pages.
254
255 New Pages
256 is the percentage of page faults that resulted in the creation of
257 pages. This happens because the page faulted has never been
258 referenced or logically contains all zeros.
259
260
261 Volmap_seg
262 is the number of page faults taken on free storage maps; also
263 expressed as the average time between faults.
264
265 Zero pages
266 is the number of page writes that were avoided because the page to
267 be written contained all zeros. In general, pages of zeros are not
268 written to disk but are converted to null addresses an indication
269 in the file map for the segment that the page is logically zero.
270 Also expressed as the average time between zero pages.
271
272
273 Segment State Change
274 is a measure of suspected covert channel activity.
275
276 audited
277 is the number of times all processes performed suspected covert
278 channel segment state changes at a rate exceeding the
279 system-defined limit.
280
281 delayed
282 is the number of times all processes had to be delayed in order to
283 keep the rate of suspected covert channel segment state changes
284 within the system-defined limit.
285
286 avg.
287 is the average time processes were delayed.
288
289
290 Laps
291 is the number of times the used pointer has gone around the main
292 memory used list in the search for a usable block of main memory.
293
294 + Steps
295 is the number of steps taken around the main memory used list. A
296 step consists in moving the used pointer to the next entry on the
297 list.
298
299 + Skip
300 is the number of times a page was skipped; also expressed as a
301 percentage of Steps.
302
303
304 + wired
305 is the number of times a page was skipped while searching the main
306 memory used list because it was wired down; also expressed as a
307 percentage of Skip.
308
309 + used
310 is the number of times a page was skipped because it was used in the
311 last lap; also expressed as a percentage of Skip.
312
313 + mod
314 is the number of times a page was skipped because it had been
315 modified; also expressed as a percentage of Skip.
316
317
318 + fc pin
319 is the number of times a page was skipped by find_core because it
320 was pinned; also expressed as a percentage of Skip.
321
322 + cl pin
323 is the number of times a page was skipped by claim_mode_core because
324 it was pinned; also expressed as a percentage of Skip.
325
326 pages
327 is the number of pages available in the system. This is the total
328 main memory minus the permanently wired down supervisor.
329
330
331 wired
332 is the number of pages temporarily wired down. This includes
333 descriptor segments and process data segments PDS for loaded
334 processes.
335
336 Average steps
337 is the average number of steps taken around the main memory used
338 list to find a usable frame of main memory.