Provided by: manpages_3.35-0.1ubuntu1_all bug


       cpuid - x86 CPUID access device


       CPUID provides an interface for querying information about the x86 CPU.

       This  device  is  accessed by lseek (2) or pread (2) to the appropriate
       CPUID level and reading in chunks of 16  bytes.   A  larger  read  size
       means multiple reads of consecutive levels.

       The  lower  32  bits of the file position is used as the incoming %eax,
       and the upper 32 bits of the file position as the  incoming  %ecx,  the
       latter intended for "counting" eax levels like eax=4.

       This  driver  uses  /dev/cpu/CPUNUM/cpuid,  where  CPUNUM  is the minor
       number, and on an SMP box will direct  the  access  to  CPU  CPUNUM  as
       listed in /proc/cpuinfo.

       This file is protected so that it can only be read by the user root, or
       members of the group root.


       The CPUID instruction can be  directly  executed  by  a  program  using
       inline  assembler.  However this device allows convenient access to all
       CPUs without changing process affinity.

       Most of the information in cpuid is reported by the  kernel  in  cooked
       form   either   in   /proc/cpuinfo   or   through   subdirectories   in
       /sys/devices/system/cpu.   Direct  CPUID  access  through  this  device
       should only be used in exceptional cases.

       The cpuid driver is not auto-loaded.  On modular kernels you might need
       to use the following command to load it explicitly before use:

            $ modprobe cpuid

       There is no support for CPUID functions that require  additional  input

       Very old x86 CPUs don't support CPUID.


       Intel   Corporation,   Intel   64   and  IA-32  Architectures  Software
       Developer's Manual Volume 2A: Instruction  Set  Reference,  A-M,  3-180
       CPUID reference.

       Intel   Corporation,  Intel  Processor  Identification  and  the  CPUID
       Instruction, Application note 485.


       This page is part of release 3.35 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at