内存仲裁器保护多少字节?

发布于 2024-09-24 20:35:09 字数 353 浏览 10 评论 0原文

内存仲裁器保护多少字节?

在阅读“理解 Linux 内核,第 3 版”第 2 章第 2.1 节时,我遇到以下语句:
在多处理器系统中,所有CPU通常共享相同的内存;这意味着 RAM 芯片可以由独立的 CPU 同时访问。由于RAM芯片上的读或写操作必须串行执行,因此在总线和每个RAM芯片之间插入了一个称为存储器仲裁器的硬件电路。它的作用是,如果芯片空闲,则授予对 CPU 的访问权限;如果芯片正忙于处理另一个处理器的请求,则延迟访问。

在这里我有一些问题:
。 RAM芯片有多少字节? (似乎这个问题等于“内存仲裁器保护多少字节?”)
。正如我所说,“我的电脑有 1G 内存”。这是否意味着“1G内存”是由许多RAM芯片组成的?

How many bytes does memory arbiter protect?

While reading "Understanding the linux kernel, 3rd edition" chapter 2, section2.1, I encounter the following statement:
In multiprocessor systems, all CPUs usually share the same memory; this means that RAM chips may be accessed concurrently by independent CPUs. Because read or write operations on a RAM chip must be performed serially, a hardware circuit called a memory arbiter is inserted between the bus and every RAM chip. Its role is to grant access to a CPU if the chip is free and to delay it if the chip is busy servicing a request by another processor.

Here i have some questions:
. how many bytes does a ram chip have? (Seem that this question is equal to "How many bytes does memory arbiter protect?" )
. as i said, "My PC has 1G memory". Does this means that the "1 G memory" is comprised of many ram chips.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谁人与我共长歌 2024-10-01 20:35:09

这实际上取决于您的计算机有多少内存。 大多数较新的计算机至少配备 1GB 内存,通常是 1GB 内存条,允许您通过购买更多内存条进行升级。仲裁器只是保护两个 cpu 避免同时尝试从 RAM 写入/读取。因此,从本质上讲,它可以保护计算机中的全部 RAM。

It really depends on what RAM your computer has. Most newer computers come with 1GB minimum an it's usually a 1GB stick of RAM that allows you to upgrade by buying more sticks. The arbiter simply protects two cpu's from trying to write/read from RAM at the same time. So in essence it protects the full amount of RAM in your computer.

青衫儰鉨ミ守葔 2024-10-01 20:35:09

当您拥有一根 2 GB RAM 时,它是由较小的 RAM 芯片组成的。如果你把棍子拿出来看看,你就能看到这一点。

保护级别可能比完整芯片小得多。你问的问题不完全是 Linux 问题。这完全取决于机器的架构。我的猜测是访问是在缓存行粒度上进行仲裁的。对于大多数现代 x86 CPU,这是 64 字节对齐的。您必须检查确切的数字。

如果有人知道更好,请纠正我。

When you get one 2 GB stick of RAM, it's made up of smaller chips of RAM. You can see this if you take the stick out and look at it.

The level of protection is probably something much smaller than a full chip. What you're asking is not a Linux question exactly. It depends entirely on the architecture of the machine. My guess is that access is arbitrated at a cache line granularity. For most modern x86 CPUs, this is 64 bytes aligned. You'll have to check for the exact number.

If someone knows better, please correct me.

梦一生花开无言 2024-10-01 20:35:09

“仲裁者”不在 RAM 芯片内部;它是内存一致性的一部分,现在可能在 CPU 芯片内部。

至于粒度 - 我猜它是 L3 缓存行,所以通常是 64 字节。

The "arbiter" is not inside the RAM chips; it's a part of memory coherency stuff, nowadays probably inside the CPU chips.

As for granularity - I'd guess it's L3 cacheline, so usually 64 bytes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文