我读了一本关于Linux虚拟内存的书Mel Gorman。我读到过,Linux支持3级页表: PGD,PMD和PTE。如果我没有记错的话,在较新版本的内核中,有四个页表级别: PUD,但这无关紧要。我有一个合理的问题。为什么Linux开发人员选择3(或4)级页表而不是使用1级?只使用一个全局页表(我指的是每个进程的全局页表)将减少内存引用的数量。
对不起,我的英语不好。
发布于 2017-11-27 17:36:25
这与你的断言完全相反。使用单级页表将需要为该单表中的每个单页(至少一个指针)分配一个条目。通过拥有多个级别的页表,除了顶层之外,所有其他级别都可以保持未分配状态,直到该部分地址空间被使用。- kaylum
https://stackoverflow.com/questions/34384467
复制相似问题