// Use the <code>system.cpu</code> API to query CPU metadata.
namespace system.cpu {
+ // Counters for assessing CPU utilization. Each field is monotonically
+ // increasing while the processor is powered on. Values are in milliseconds.
+ dictionary CpuTime {
+ // The cumulative time used by userspace programs on this processor.
+ double user;
+
+ // The cumulative time used by kernel programs on this processor.
+ double kernel;
+
+ // The cumulative time spent idle by this processor.
+ double idle;
+
+ // The total cumulative time for this processor. This value is equal to
+ // user + kernel + idle.
+ double total;
+ };
+
+ dictionary ProcessorInfo {
+ // Cumulative usage info for this logical processor.
+ CpuTime usage;
+ };
+
dictionary CpuInfo {
// The number of logical processors.
long numOfProcessors;
+
// The architecture name of the processors.
DOMString archName;
+
// The model name of the processors.
DOMString modelName;
+
+ // A set of feature codes indicating some of the processor's capabilities.
+ // The currently supported codes are "mmx", "sse", "sse2", "sse3", "ssse3",
+ // "sse4_1", "sse4_2", and "avx".
+ DOMString[] features;
+
+ // Information about each logical processor.
+ ProcessorInfo[] processors;
};
callback CpuInfoCallback = void (CpuInfo info);