gpt4 book ai didi

memory-management - 如何计算虚拟页数

转载 作者:行者123 更新时间:2023-12-05 04:05:53 25 4
gpt4 key购买 nike

虚拟地址大小:32位

页面大小=4K=2^12字节

页数是多少?我知道答案是 (2^32)/(2^12) = 2^20 但为什么呢?

我认为应该是 (2^32)/(2^15) 因为字节位转换 (2^12)*(8)=2^15

最佳答案

内存中的每个字节都有一个从 0 开始的数字地址。CPU 有一个或多个寄存器,用于保存正在处理的那个字节的地址。寄存器是一种物理设备,对其可以存储的数字有限制。

virtual address size: 32 bits

这意味着地址寄存器可以存储一个地址(数字),它可以是 02^32 -1 之间的任何值。

由于地址寄存器可以存储的最大地址是 2^32 -1,因此拥有更多内存字节没有意义。因为 CPU 永远无法与它们一起工作。所以通常我们假设总内存为 2^32 字节。

page size = 4K =2^12 bytes

数百万字节的总内存实际上被组织成称为页面的 block 。这里 2^32 字节的总内存被分成 2^12 字节的页面。

what is the number of pages?

答案是 (2^32)/(2^12) = 2^20。干得好!

but why? i think it should be (2^32)/(2^15) because of the byte bit conversion (2^12)*(8)=2^15

这里的2^32是内存中的总字节数。 2^12 是页面中的总字节数。分子和分母都应采用相同的单位 - 字节。因此,您无需将分母转换为位。


注意事项:

我使用了过度简化的术语,例如 memoryaddressregister 等。上面的许多陈述对真正的笔记本电脑 - 但对初始学习很有用。

关于memory-management - 如何计算虚拟页数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50557613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com