CPUID - Linux手册页
Linux程序员手册 第4部分
更新日期: 2019-08-02
名称
cpuid-x86 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指令。但是,该设备允许在不更改进程亲和力的情况下方便地访问所有CPU。
cpuid中的大多数信息是由内核以/ proc / cpuinfo或通过/ sys / devices / system / cpu中的子目录以已熟形式报告的。仅在特殊情况下,才应使用通过此设备进行的直接CPUID访问。
cpuid驱动程序不会自动加载。在模块化内核上,您可能需要在使用之前使用以下命令显式加载它:
$ modprobe cpuid
不支持需要其他输入寄存器的CPUID功能。
非常老的x86 CPU不支持CPUID。
另外参见
cpuid(1)
英特尔公司,英特尔64和IA-32体系结构软件开发人员手册,卷2A:指令集参考,A-M,3-180 CPUID参考。
英特尔公司,英特尔处理器标识和CPUID指令,应用笔记485。
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。