Documentation for CPU Monitor for RSX11-M/M+ Don Rubin S.E.T. Inc. 9703 Forest Glen Court Silver Spring, MD 20910 The enclosed program is a graphic CPU monitor for RSX11M/M+. It requires no modification to the operating system and adds little overhead to the system. It was created because there is no way to measure CPU availability in RSX (the stuff on the RMD system page is garbage, ask the DEC developers). The program works as follows: . it is installed at priority 200 (though 50 would be OK) . after initialization it hangs a 1 second mark time and drops to priority 5 at which point it is higher than the null task but lower than every other task in the system . at the low priority it increments a counter . when the mark time expires the priority is raised and the CPU availability is computed and displayed on a bar graph (VT100) . the counter is cleared, another mark time is hung, and priority dropped . program is terminated by the user typing any character on the terminal the program is running from In our application we have a version of the program which doesn't display the data directly but dumps it into a global common for display by another task. The program must be calibrated for each particular system. To calibrate run the program with the command "CPU CALIB" which causes it to dump calibration values. Pick the average value (make sure the system is quiescent at this point). After calibration the value may be hard coded into the program or entered in the command line "CPU 115000". The program can be built as follows (note, source, objects and task supplied) f77 cpu=cpu/-wr mac mymark=mymark mac ast=ast tkb cpu/fp=cpu,mymark,ast,lb:[1,1]f4pots/lb ins cpu/task=...cpu/pri=200 The program as supplied displays CPU utilization but can be changed to show availability by subtracting the utilization from 100 before display. I can answer written inquires only at the above address. Page 2 Don Rubin