我尽力了解所示的页面翻译概念hereUNIX中的页面大小是多少?
偏移量是12位,这意味着有4096个条目或4K条目。内存中的每个条目都是32位或4字节。所以这意味着一个页面大小为4K x 4Bytes = 16KB。
但这似乎不正确。
我对尺寸的计算已经搞乱了。请帮助我理解这个尺寸的两级翻译。
根据给定的图片。
框架的大小是多少?
页面大小是多少?
页面大小是多少?
结论: 所以我从@chill得到的答案是,在页目录和页表的偏移大小为32位,1024个条目(因此4KB),而在页偏移是8位,4096条目(因此4KB)
我绝不是这方面的专家,但我敢肯定,你对这里测量的东西感到困惑。每个页面的大小并不直接与每个页面的大小相关。具有4K条目的页表格意味着它在32位机器上的大小将为16K,因为它必须存储4096个32位地址指针,其中每个_point_指向固定大小的存储器(即页面)中的块, 。每个条目指向的页面的实际大小不受此控制。如果碰巧是4K,这意味着您可以从该特定页表中寻址16MB的内存。 – Polynomial
但是如果偏移量是12位,这意味着我可以在页表中存储最多4096个条目?那么对于32位地址,最大页面大小是16KB?那是对的吗? – SMUsamaShah
不可以。请参阅寒意对他的回答的评论。 _page_中的每个条目只是一个字节,而不是四个。这导致4KB页面(12位索引,1字节条目= 2^12 * 1 = 4096)。 _page table_中的条目在32位计算机上是4个字节,因为它们是指向页面的指针。由于页表具有10位索引和4字节条目,因此页表的大小为2^10 * 4 = 4096字节。 – Polynomial