问题描述
我需要在Linux系统中获得get-wmiobject win32_processor | select-object -property processorId
的结果。
为此,我首先需要了解WMI从何处获取结果。
到目前为止,我的理解是,在这种情况下,get-wmiobject win32_processor的作用就像是汇编程序指令cpuID的包装。
来自docs:
ProcessorId 数据类型:字符串 访问类型:只读 限定符:MappingStrings(“ SMBIOS |类型4 |处理器信息|处理器ID”) 描述处理器功能的处理器信息。对于x86类cpu,字段格式取决于cpuID指令的处理器支持。如果支持该指令,则该属性包含2(两个)DWORD格式的值。第一个是偏移量08h-0Bh,它是输入EAX设置为1时cpuID指令返回的EAX值。第二个是偏移量0Ch-0Fh,它是指令返回的EDX值。该属性只有前两个字节有效,并且包含cpu复位时DX寄存器的内容-所有其他字节均设置为0(零),并且内容均为DWORD格式。
-
返回“偏移量”是什么意思?这2个DWORD是否返回cpu支持的所有活动标志(true)/功能的位表示?您能提供一个计算一个例子吗?
-
最终,要在linux系统中获得相同的数据,我需要为cpuID调用编写包装器,然后“解析”在正确的cpu寄存器中返回的数据?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)