I am programming a client to collect performance data from windows machines. This data will be send to a central server storing the information and displaying it graphically.
I am using the windows performance API to collect the system data. But now I have a little problem. The server needs to know how the data I send is related to each other and I can't find anything useful on the web about CPU counters. My question is how these counters stand in relation to each other.
Example
% processor time + % idle time = 100%
This is not too hard to find out but I cannot find any information on the other percentage values like interrupt time, privileged time or user time. How stand these in relation to the processor time for example. The ultimate goal is to add all these values and get 100% at the end.
Thank you in advance and sorry for my english, I hope my question is clear.
This article makes clear (in the paragraph ending "would be 15%") that
% Privileged Time + % User Time + % Idle Time = 100%
Which implies that all the other CPU time measurements are subsets of one of these three measures. The "Counter Description" in perfmon describes the relationship for most of them, for example:
% DPC Time is a component of % Privileged Time because DPCs are executed in privileged mode.
% Interrupt Time isn't documented like this, but it is plainly also a component of privileged time.