计算机/操作系统如何判断机器中的 RAM 类型?

Cel*_*tas 80 memory windows macos

Mac OS X 如何判断机器中的 RAM 类型?例如,我正在研究一个具有 DDR3 RAM @ 1600MHz 的设备,我认为如果不亲自打开机箱并查看它,就不可能知道 RAM。如何在其他系统上做到这一点?

Law*_*ceC 148

RAM 棒上有一个名为Serial Presence Detect的小芯片,其中包含诸如容量、首选时间、制造商甚至序列号等信息。

操作系统可以使用 i2c 总线(其中还包括温度传感器之类的东西)访问 SPD 信息。我认为您可以使用各种 i2c 实用程序直接从 Linux 读取 SPD。

来自维基百科文章的这张图片有一个很好的图片: 电子

  • 在 Linux 中,`dmidecode --type memory` 可以让你看到一些信息。显然它可以输出制造商和序列号,但至少在我的系统上,它们被简单地报告为“ManufacturerN”和“SerNumN”,其中“N”似乎是插槽号。 (2认同)
  • 我认为 `dmidecode` 解析了 BIOS 在启动时放在一起的东西。BIOS 应该读取 SPD 并相应地报告——虽然有缺陷的 BIOS 并不是什么新鲜事。 (2认同)

Aus*_*nch 48

在 Windows 上:

wmic memoryChip get /?
Run Code Online (Sandbox Code Playgroud)

将为您提供各种 RAM 信息,您可以直接从命令提示符处询问。

例如,

wmic memorychip get serialnumber
Run Code Online (Sandbox Code Playgroud)

给你序列号。您也可以使用Speed,Model有时,Manufacturer等等。

WMI 是查询SMBIOS数据的 Windows 方法。出于不同的原因,Apple、Linux、Windows 和任何想要在大多数硬件上运行的人都需要在某种程度上支持 SMBIOS。

您还可以使用 SMBIOS(例如通过 Windows 中的 WMI 或 WMIC)来收集硬盘信息、网络信息(它是 10/100 还是 10/100/1000 卡?)。

更进一步,每个制造商都有一个 NIC 上的 MAC 地址代码。RAM 也有制造商代码。所以你需要做的就是获取他们的代码,例如我在这台笔记本电脑中的 2 x2GB 是 830B,为制造商建立一个数据库(830B 可能是一个品牌,然后也转售!)以及什么型号意味着什么。我相信这就是 CPUz 的工作原理——基本查询和真正完整的最新数据库。

  • 请注意,WMI 能够查询 DMI/SMBus 信息,但*不是其 Windows 实现*。此外,纯粹查询和解码 DMI 信息的 `dmidecode` 也[可用作 Windows 端口](http://gnuwin32.sourceforge.net/packages/dmidecode.htm)。 (3认同)
  • @syneticon-dj - 如果有误,请进行编辑。 (2认同)

jno*_*ack 19

内存速度和类型与bios协商,可由操作系统读取。

http://www.computermemoryupgrade.net/index1.html有一个非常好的网站,可以让您更深入地了解这些东西

但是您可以通过以下方式轻松确定您的类型和速度,而无需打开盖子:

Apple -> 关于本机 -> 更多信息 -> 系统报告

打开硬件 -> 内存

您应该看到每个 RAM 棒,包括大小、类型和速度(为了好玩,状态以确保它没问题)

带内存的系统报告


ter*_*don 14

在许多 Linux 发行版(例如 Debian)上,您可以使用lshw 硬件列表器

sudo lshw |grep DDR
         description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)
         description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)
Run Code Online (Sandbox Code Playgroud)

我想 RAM 与所有其他硬件一样,会向操作系统报告其描述和功能。如果 Linux 可以做到,我看不出 OSX 做不到的任何理由。

如果你的发行版没有安装 lshw,你可以使用你的包管理器安装它,例如

aptitude install lshw
Run Code Online (Sandbox Code Playgroud)

或从项目网站下载。


小智 10

在 Mac OS X 上从终端运行:

$ system_profiler SPMemoryDataType
Run Code Online (Sandbox Code Playgroud)