鱼C论坛

 找回密码
 立即注册
查看: 4138|回复: 10

在Windows如何用python运行Linux的dmidecode命令

[复制链接]
发表于 2022-10-21 10:00:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问在Windows中如何用python运行Linux的dmidecode命令
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-10-21 12:29:19 From FishC Mobile | 显示全部楼层
除非windows提供类似的函数或可执行文件
否则,怎么可能实现
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-21 13:02:42 | 显示全部楼层
wp231957 发表于 2022-10-21 12:29
除非windows提供类似的函数或可执行文件
否则,怎么可能实现


那请问python代码怎么实现在windows、Linux系统上查询系统一共有可支持多少个CPU及Memory插槽,以及目前已经插了几个CPU,几根Memory,分别是哪几根(或者是在哪个插槽插的),我只知道Linux系统下dmidecode可以实现
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-21 13:08:20 From FishC Mobile | 显示全部楼层
怪兽同学 发表于 2022-10-21 13:02
那请问python代码怎么实现在windows、Linux系统上查询系统一共有可支持多少个CPU及Memory插槽,以及目 ...

那就把这个代码下载下来,研究研究他是怎么写的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-21 15:09:23 | 显示全部楼层
人造人 发表于 2022-10-21 13:08
那就把这个代码下载下来,研究研究他是怎么写的

我下载了,7000行代码。。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-21 17:20:46 From FishC Mobile | 显示全部楼层
怪兽同学 发表于 2022-10-21 15:09
我下载了,7000行代码。。。。

嗯,研究研究他是怎么做的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-22 09:31:34 | 显示全部楼层
psutil
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-24 07:57:56 | 显示全部楼层

这个我也看了,好像也不行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-24 09:14:56 | 显示全部楼层
怪兽同学 发表于 2022-10-24 07:57
这个我也看了,好像也不行

把你尝试了psutil的代码发出来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 16:53:24 | 显示全部楼层
怪兽同学 发表于 2022-10-21 15:09
我下载了,7000行代码。。。。

最近在研究smbios,smbios里面有你想要的东西
7.17 Physical Memory Array (Type 16)
Handle 0x003D, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: None
        Maximum Capacity: 64 GB
        Error Information Handle: Not Provided
        Number Of Devices: 4

这里面的 Number Of Devices 字段写了一共有多少个插槽,我这台电脑有4个
然后
7.18 Memory Device (Type 17)
结构会出现4次
如果你安装了内存条,这里显示内存条的一些信息,如果没有安装内存条,这里显示 Unknown
Size 字段是 No Module Installed

这是原话
  1. Size of the memory device If the value is 0, no memory device is installed in the socket; if the size is unknown, the field value is FFFFh. If the size is 32 GB-1 MB or greater, the field value is 7FFFh and the actual size is stored in the Extended Size field.
  2. The granularity in which the value is specified depends on the setting of the most-significant bit (bit 15). If the bit is 0, the value is specified in megabyte units; if the bit is 1, the value is specified in kilobyte units. For example, the value 8100h identifies a 256 KB memory device and 0100h identifies a 256 MB memory device.
复制代码

  1. 内存设备的大小 如果值为0,则插槽中未安装内存设备
复制代码


这样你就可以知道一共有几个内存插槽,插了几根内存条

cpu插槽应该也是这样的操作,不过我这边只有一个cpu插槽,没办法帮你验证

  1. Handle 0x003D, DMI type 16, 23 bytes
  2. Physical Memory Array
  3.         Location: System Board Or Motherboard
  4.         Use: System Memory
  5.         Error Correction Type: None
  6.         Maximum Capacity: 64 GB
  7.         Error Information Handle: Not Provided
  8.         Number Of Devices: 4

  9. Handle 0x003E, DMI type 17, 40 bytes
  10. Memory Device
  11.         Array Handle: 0x003D
  12.         Error Information Handle: Not Provided
  13.         Total Width: 64 bits
  14.         Data Width: 64 bits
  15.         Size: 8 GB
  16.         Form Factor: DIMM
  17.         Set: None
  18.         Locator: ChannelA-DIMM0
  19.         Bank Locator: BANK 0
  20.         Type: DDR4
  21.         Type Detail: Synchronous
  22.         Speed: 2133 MT/s
  23.         Manufacturer: 8313
  24.         Serial Number: 00000000
  25.         Asset Tag: 9876543210
  26.         Part Number: CL16-16-16 D4-2400  
  27.         Rank: 2
  28.         Configured Memory Speed: 2133 MT/s
  29.         Minimum Voltage: 1.2 V
  30.         Maximum Voltage: 1.2 V
  31.         Configured Voltage: 1.2 V

  32. Handle 0x003F, DMI type 17, 40 bytes
  33. Memory Device
  34.         Array Handle: 0x003D
  35.         Error Information Handle: Not Provided
  36.         Total Width: 64 bits
  37.         Data Width: 64 bits
  38.         Size: 8 GB
  39.         Form Factor: DIMM
  40.         Set: None
  41.         Locator: ChannelA-DIMM1
  42.         Bank Locator: BANK 1
  43.         Type: DDR4
  44.         Type Detail: Synchronous
  45.         Speed: 2133 MT/s
  46.         Manufacturer: 8313
  47.         Serial Number: 00000000
  48.         Asset Tag: 9876543210
  49.         Part Number: CL16-16-16 D4-2400  
  50.         Rank: 2
  51.         Configured Memory Speed: 2133 MT/s
  52.         Minimum Voltage: 1.2 V
  53.         Maximum Voltage: 1.2 V
  54.         Configured Voltage: 1.2 V

  55. Handle 0x0040, DMI type 17, 40 bytes
  56. Memory Device
  57.         Array Handle: 0x003D
  58.         Error Information Handle: Not Provided
  59.         Total Width: Unknown
  60.         Data Width: Unknown
  61.         Size: No Module Installed
  62.         Form Factor: Unknown
  63.         Set: None
  64.         Locator: ChannelB-DIMM0
  65.         Bank Locator: BANK 2
  66.         Type: Unknown
  67.         Type Detail: None

  68. Handle 0x0041, DMI type 17, 40 bytes
  69. Memory Device
  70.         Array Handle: 0x003D
  71.         Error Information Handle: Not Provided
  72.         Total Width: Unknown
  73.         Data Width: Unknown
  74.         Size: No Module Installed
  75.         Form Factor: Unknown
  76.         Set: None
  77.         Locator: ChannelB-DIMM1
  78.         Bank Locator: BANK 3
  79.         Type: Unknown
  80.         Type Detail: None
复制代码


参考:https://www.dmtf.org/sites/defau ... s/DSP0134_3.0.0.pdf
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 21:26:59 | 显示全部楼层
Windows应该是用 wmic 命令(cmd),如 wmic memorychip   或  wmic memorychip list brief
或PowerShell命令:Get-WmiObject ,如 Get-WmiObject -Class Win32_PhysicalMemory
可以查查:Windows 获取硬件信息
如果可以,那剩下的就是Python中如何调用这些系统命令的问题了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-26 00:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表