5

我正在尝试获取CPU serialmotherboard serial使用CPython用于许可目的。可能吗?

我正在使用Linux.

4

5 回答 5

7

在 Linux 下,您可以使用“lshw -quiet -xml”并解析其输出。您会在这里找到大量系统信息:cpuid、主板 ID 等等。

于 2010-11-18T15:00:16.097 回答
4

您需要使用 CPUID 指令。

CPUID

大多数 C 编译器都支持内联汇编,但您需要知道自己在做什么。

于 2010-11-18T14:51:46.447 回答
3

你可以得到CPUID。也许linux命令'dmidecode'可以帮助你。您可以执行此命令,或加载“dmidecode”的源代码。接下来是“dmidecode -t 处理器”的输出:

>dmidecode -t processor
# dmidecode 2.7
SMBIOS 2.2 present.

Handle 0x0004, DMI type 4, 32 bytes.
Processor Information
        Socket Designation: Socket 478
        Type: Central Processor
        Family: Pentium 4
        Manufacturer: Intel
        ID: 27 0F 00 00 FF FB EB BF
        Signature: Type 0, Family 15, Model 2, Stepping 7
        Flags:
                FPU (Floating-point unit on-chip)
                VME (Virtual mode extension)
                DE (Debugging extension)
                PSE (Page size extension)
                TSC (Time stamp counter)
                MSR (Model specific registers)
                PAE (Physical address extension)
                MCE (Machine check exception)
                CX8 (CMPXCHG8 instruction supported)
                APIC (On-chip APIC hardware supported)
                SEP (Fast system call)
                MTRR (Memory type range registers)
                PGE (Page global enable)
                MCA (Machine check architecture)
                CMOV (Conditional move instruction supported)
                PAT (Page attribute table)
                PSE-36 (36-bit page size extension)
                CLFSH (CLFLUSH instruction supported)
                DS (Debug store)
                ACPI (ACPI supported)
                MMX (MMX technology supported)
                FXSR (Fast floating-point save and restore)
                SSE (Streaming SIMD extensions)
                SSE2 (Streaming SIMD extensions 2)
                SS (Self-snoop)
                HTT (Hyper-threading technology)
                TM (Thermal monitor supported)
                PBE (Pending break enabled)
        Version: Intel(R) Pentium(R) 4 CPU
        Voltage: 1.5 V
        External Clock: 133 MHz
        Max Speed: 3066 MHz
        Current Speed: 2800 MHz
        Status: Populated, Enabled
        Upgrade: ZIF Socket
        L1 Cache Handle: 0x0008
        L2 Cache Handle: 0x0009
        L3 Cache Handle: No L3 Cache
于 2010-11-19T08:32:34.043 回答
2

在 Linux 中,主板信息可以在 /sys/class/dmi 下找到,例如

$ sudo grep '' /sys/class/dmi/id/board_*
/sys/class/dmi/id/board_asset_tag:
/sys/class/dmi/id/board_name:30AD
/sys/class/dmi/id/board_serial:
/sys/class/dmi/id/board_vendor:Hewlett-Packard
/sys/class/dmi/id/board_version:KBC Version 56.34

...但并非所有主板都通过 dmi 提供序列号...正如您在此处看到的。

于 2011-12-22T14:05:00.513 回答
0

CPU 不再获得序列号,这种情况已经有一段时间了。对于 CPUID - 每个 CPU 型号都是唯一的,因此它对许可没有帮助。

于 2010-11-19T07:40:46.427 回答