Class CPUID

java.lang.Object
freenet.support.CPUInformation.CPUID

public class CPUID
extends Object
A class for retrieveing details about the CPU using the CPUID assembly instruction. Ref: http://en.wikipedia.org/wiki/Cpuid
Author:
Iakin
  • Constructor Details

  • Method Details

    • getJcpuidVersion

      public static int getJcpuidVersion()
      Return the jcpuid version
      Returns:
      0 if no jcpuid available, 2 if version not supported
      Since:
      0.9.26
    • getCPUVendorID

      static String getCPUVendorID()
    • getCPUFamily

      static int getCPUFamily()
      Returns:
      0-15
    • getCPUModel

      static int getCPUModel()
      Returns:
      0-15
    • getCPUExtendedModel

      static int getCPUExtendedModel()
      Only valid if family == 15, or, for Intel only, family == 6. Left shift by 4 and then add model to get full model.
      Returns:
      0-15
    • getCPUType

      static int getCPUType()
      Returns:
      0-15
    • getCPUExtendedFamily

      static int getCPUExtendedFamily()
      Only valid if family == 15. Add family to get full family.
      Returns:
      0-255
    • getCPUStepping

      static int getCPUStepping()
      Returns:
      0-15
    • getEDXCPUFlags

      static int getEDXCPUFlags()
    • getECXCPUFlags

      static int getECXCPUFlags()
    • getExtendedECXCPUFlags

      static int getExtendedECXCPUFlags()
    • getExtendedEDXCPUFlags

      static int getExtendedEDXCPUFlags()
      Since:
      0.8.7
    • getExtendedEBXFeatureFlags

      static int getExtendedEBXFeatureFlags()
      Since:
      0.9.26
    • getExtendedECXFeatureFlags

      static int getExtendedECXFeatureFlags()
      There's almost nothing in here.
      Since:
      0.9.26
    • getCPUModelName

      static String getCPUModelName()
      The model name string, up to 48 characters, as reported by the processor itself.
      Returns:
      trimmed string, null if unsupported
      Since:
      0.9.16
    • getInfo

      public static CPUInfo getInfo() throws UnknownCPUException
      Returns a CPUInfo item for the current type of CPU If I could I would declare this method in a interface named CPUInfoProvider and implement that interface in this class. This would make it easier for other people to understand that there is nothing preventing them from coding up new providers, probably using other detection methods than the x86-only CPUID instruction
      Throws:
      UnknownCPUException
    • main

      public static void main​(String[] args)