CPUID - Linux手册页

Linux程序员手册 第4部分
更新日期: 2019-08-02

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

备注

可以使用内联汇编器由程序直接执行CPUID指令。但是,该设备允许在不更改进程亲和力的情况下方便地访问所有CPU。

cpuid中的大多数信息是由内核以/ proc / cpuinfo或通过/ sys / devices / system / cpu中的子目录以已熟形式报告的。仅在特殊情况下,才应使用通过此设备进行的直接CPUID访问。

cpuid驱动程序不会自动加载。在模块化内核上,您可能需要在使用之前使用以下命令显式加载它:

$ modprobe cpuid

不支持需要其他输入寄存器的CPUID功能。

非常老的x86 CPU不支持CPUID。

说明

CPUID提供了一个用于查询有关x86 CPU信息的接口。

lseek(2)或pread(2)将该设备访问到适当的CPUID级别,并读取16个字节的块。较大的读取大小表示连续级别的多次读取。

文件位置的低32位用作传入的%eax,文件位置的高32位用作传入的%ecx,后者用于"计数" eax级别,例如eax = 4。

该驱动程序使用/ dev / cpu / CPUNUM / cpuid,其中CPUNUM是次设备号,并且在SMP框上将按照/ proc / cpuinfo中列出的内容直接访问CPU CPUNUM。

此文件受保护,因此它只能由用户root或组root的成员读取。

名称

cpuid-x86 CPUID访问设备

另外参见

cpuid(1)

英特尔公司,英特尔64和IA-32体系结构软件开发人员手册,卷2A:指令集参考,A-M,3-180 CPUID参考。

英特尔公司,英特尔处理器标识和CPUID指令,应用笔记485。

日期:2019-08-20 18:01:45 来源:oir作者:oir