cpu_info

Contains information about a CPU.

Service:NetWare Platform

Syntax

  #include <monitor.h>
  
  struct cpu_info 
  {
     int        which;
     int        CurrentProcessor;
     uint32_t   ProcessorUtilization;
     unit32_t   ThreadsOnProcessor;
     unit32_t   reserved;
     uint32_t   Family;
     uint32_t   Model;
     uint32_t   Stepping;
     uint32_t   Revision;
     uint32_t   FeatureFlags;
     uint64_t   SerialNumber;
     uint32_t   Speed;
     uint32_t   L1CacheSize;
     uint32_t   L2CacheSize;
     uint32_t   L3CacheSize;
     uint32_t   ReadyThreads;
     uint32_t   RunningThreads;
     uint32_t   SuspendedThreads;
     uint32_t   reserved2;
     uint64_t   ThreadCPUTime;
     uint64_t   reserved3;
  };
  

Fields

which

Specifies the processor, by number, for which CPU information is returned.

CurrentProcessor

Indicates whether the current processor is the same as the CPU specified in the which field. If they are the same, contains TRUE (nonzero). If different, contains FALSE (zero).

ProcessorUtilization

Specifies the average of the server's total processing capacity that was used during the last second (or the default update interval), expressed as a percentage. This value reflects changes in system configuration as they occur, such as loading an NLM or mounting or dismounting a volume.

ThreadsOnProcessor

Specifies the number of threads that are running on the CPU.

reserved1

Reserved for future use.

Family

Specifies the family number of the CPU from the CPUID instruction.

Model

Specifies the model number of the CPU from the CPUID instruction.

Stepping

Specifies the stepping ID of the CPU from the CPUID instruction.

Revision

Specifies the microcode update revision level of the CPU from the CPUID instruction.

FeatureFlags

Specifies the EAX=1 bitmap of feature flags from the CPUID instruction.

SerialNumber

Specifies the internal serial number of the CPU from the CPUID instruction.

Speed

Specifies the speed, in megahertz, of the CPU from the CPUID instruction.

L1CacheSize

Specifies the size in kilobytes of the L1 cache of the CPU from the CPUID instruction.

L2CacheSize

Specifies the size in kilobytes of the L2 cache of the CPU from the CPUID instruction.

L3CacheSize

Specifies the size in kilobytes of the L3 cache of the CPU from the CPUID instruction.

ReadyThreads

Specifies the number of threads that are ready to run, but are waiting for CPU time.

RunningThreads

Specifies the number of threads that are currently being processed.

SuspendedThreads

Specifies the number of threads that are in a suspended state.

reserved2

Reserved for future use.

ThreadCPUTime

Specifies the time that has elapsed since the server was most recently started.

reserved3

Reserved for future use.