![]() ![]() These could be used to tell various CPU family members apart. In the Motorola 680x0 family - that never had a CPUID instruction of any kind - certain specific instructions required elevated privileges. Outside the x86 family, developers are mostly still required to use esoteric processes (involving instruction timing or CPU fault triggers) to determine the variations in CPU design that are present. With the introduction of the 80386 processor, EDX on reset indicated the revision but this was only readable after reset and there was no standard way for applications to read the value. Prior to the general availability of the CPUID instruction, programmers would write esoteric machine code which exploited minor differences in CPU behavior in order to determine the processor make and model. 3 CPUID usage from high-level languages.2.19 EAX=80000008h: Virtual and Physical address Sizes.2.18 EAX=80000007h: Advanced Power Management Information. ![]() 2.16 EAX=80000005h: L1 Cache and TLB Identifiers.2.14 EAX=80000001h: Extended Processor Info and Feature Bits.2.13 EAX=80000000h: Get Highest Extended Function Implemented.2.10 EAX=12h, ECX=0: SGX Leaf Functions.2.6 EAX=6: Thermal and power management.2.5 EAX=4 and EAX=Bh: Intel thread/core and cache topology.2.3 EAX=2: Cache and TLB Descriptor information.2.2 EAX=1: Processor Info and Feature Bits.2.1 EAX=0: Highest Function Parameter and Manufacturer ID. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |