CPUやマザーボードのシリアル番号を取得しますか?
-
26-09-2019 - |
質問
私は目的をライセンスするためCPU serial
またはmotherboard serial
を使用してC
かPython
を取得しようとしています。それは可能でしょうか?
私はLinux
を使用しています。
解決
あなたは、CPUID命令を使用する必要があります。
ほとんどのCコンパイラには、インラインアセンブリのためのいくつかのサポートを持っていますが、あなたは何をしているかを知っておく必要があります。
他のヒント
Linuxでは、あなたは "lshw -quiet -xml" を使用し、その出力を解析することができます。 CPUID、マザーボードのIDとはるか:あなたはここで、システム情報をたくさん見つけることができます。
あなたは、CPUIDを得ることができます。 たぶん、Linuxのコマンド「dmidecodeのは、」あなたを助けることができます。 あなたは、このコマンドをexecし、または「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
でのLinux、マザーボードの情報は、/ sysの下に見つけることができる/クラス/ 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経由のシリアル番号を提供しています。
のCPUもはやシリアル番号を取得し、それが今しばらくの間そのようにされています。 CPUIDのために - それゆえ、それはライセンスと解決しないCPUモデルごとにユニークです。
。所属していません StackOverflow