linux分页,使用了很多页表目录

标签 linux paging page-tables

我读了 Mel Gorman 关于 Linux 虚拟内存的书。 我读过,Linux 支持 3 级页表:PGD、PMD 和 PTE。如果我没有记错在较新版本的内核中,有四个页表级别:PUD,但这并不重要。我有一个合理的问题。 为什么 Linux 开发人员选择 3(或 4)级页表而不是使用一个?仅使用一个全局页表(我的意思是每个进程的全局页表)将减少内存引用量。

对不起,我的英语不好。

最佳答案

这与您的断言完全相反。使用单级页表需要为每个单页(至少一个指针)分配一个条目到该单页表中。通过拥有多级页表,除了顶级之外,所有其他级别都可以保持未分配状态,直到使用该部分地址空间。 – 凯勒姆

关于linux分页,使用了很多页表目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34384467/

相关文章:

memory-management - 转换内核地址时 pgd_bad、pmd_bad、pud_bad 的含义是什么?

C++ unix 32 位到在 x86_64 芯片(64 位服务器)上运行的 Red Hat Linux

linux - 是否可以忽略平开窗中的类型错误?

linux - 将最后四行移动到文本文件中的第二行

linux/tmp 文件夹 + 如何知道文件是否会在重启后或一段时间后被删除

asp.net - Telerik RadGrid 分页和更新面板问题

seo - 如何为网格创建 SEO 友好的分页?

linux - 当前页面的 kpagecount 为零

linux - 页错误处理程序如何知道从哪里获取 4K 字节?

x86 - 如果为进程页表中的条目设置当前位,这意味着什么?