CPUID
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/01/21 14:37 UTC 版)
CPUIDは、x86の機械語命令の一つ(およびそのアセンブリ・ニーモニック)である。CPUの識別 (IDentification) の意。486の後期のステッピングで導入され、Pentiumで完全に公開された[1]。
- ^ Linux 6.3 kernel sources, /arch/x86/include/asm/cpuid.h, line 69
- ^ gcc-patches mailing list, CPUID Patch for IDT Winchip, May 21, 2019
- ^ AMD, AMD Processor Recognition Application Note, publication #20734, rev D, Jan 1997, page 13
- ^ Michal Necasek, SYSENTER, Where Are You?, OS/2 Museum, July 20, 2017
- ^ Geoff Chappell, ECX From CPUID Leaf 1, Jan 26, 2020. Archived on May 9, 2020.
- ^ a b Intel, Itanium Architecture Software Developer's Manual, rev 2.3, volume 4: IA-32 Instruction Set, may 2010, document number: 323208, table 2-5, page 4:81, see bits 20 and 30. Archived on Feb 15, 2012.
- ^ “Mechanisms to determine if software is running in a VMware virtual machine”. VMware Knowledge Base. VMWare (2015年5月1日). 2023年8月12日閲覧。 “Intel and AMD CPUs have reserved bit 31 of ECX of CPUID leaf 0x1 as the hypervisor present bit. This bit allows hypervisors to indicate their presence to the guest operating system. Hypervisors set this bit and physical CPUs (all existing and future CPUs) set this bit to zero. Guest operating systems can test bit 31 to detect if they are running inside a virtual machine.”
- ^ “Hypervisor CPUID Interface Proposal”. LKML Archive on lore.kernel.org (2008年10月1日). 2019年3月15日時点のオリジナルよりアーカイブ。2023年8月12日閲覧。 “Bit 31 of ECX of CPUID leaf 0x1. This bit has been reserved by Intel & AMD for use by hypervisors and indicates the presence of a hypervisor. Virtual CPU's (hypervisors) set this bit to 1 and physical CPU's (all existing and future CPU's) set this bit to zero. This bit can be probed by the guest software to detect whether they are running inside a virtual machine.”
- ^ CPUID Specification, publication no.25481, rev 2.34, AMD, (September 2010), オリジナルの18 Aug 2022時点におけるアーカイブ。
- ^ Linux kernel source code
- ^ a b c d e f g h i j k l m n o p q r EDXのビット 0 から 9, 12 から 17, 23と 24は、AMDのCPUではEAX=1の場合のCPUIDの結果と重複、IntelのCPUでは未使用。
- ^ インテル社のCPUではCPUIDのsyscallビットはCPUが64ビットモードで動作しているときのみセットされる。
- ^ Intel, Intel® 64 and IA-32 Architectures Software Developer’s Manual, order no. 325462-079, march 2023, table 3-8 on page 3-238
- ^ Lightweight Profiling Specification, AMD, (August 2010), オリジナルの2012-11-27時点におけるアーカイブ。 2013年4月3日閲覧。
- ^ AMD, Family 10h BKDG, document no. 31116, rev 3.62, jan 11, 2013, p. 388 - lists the NodeId bit. Archived on 16 Jan 2019.
- 1 CPUIDとは
- 2 CPUIDの概要
- 3 CPUID命令の使用可否
- 4 脚注
- CPUIDのページへのリンク