Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Linux内核内存管理分页级别大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在阅读Bovet和Cesati的“理解 Linux内核”一书.在第二章中,在“在Linux中进行分页”一书中,作者提到了如何使用32个没有启用PAE的体系结构来消除Page Middle和Upper Directories.我无法理解作者的意思. 他们的治疗方法已经松动,并没有很多直观的意义. For 32-bit architectures with no Physical Address
我正在阅读Bovet和Cesati的“理解 Linux内核”一书.在第二章中,在“在Linux中进行分页”一书中,作者提到了如何使用32个没有启用PAE的体系结构来消除Page Middle和Upper Directories.我无法理解作者的意思.

他们的治疗方法已经松动,并没有很多直观的意义.

有人能以更可口的方式解释这一点吗?

解决方法

好吧,我认为这意味着内核总是使用4级页表,它可以容纳正常的32位,PAE和长模式.我认为它们在引用中的含义是PM4L和PDT只设置为一个条目的长度,它只指向下一个条目.这意味着在正常的32位中,你得到这个:

/-> Page table
PM4L -> PDT -> Page Directory --> Page table
                              \-> Page table

但在PAE中,你得到了这个:

PM4L -> PDT -> 512 Page Directories -> 1024 Page tables

在长模式下,你得到这个:

PM4L -> 512 PDTs -> 512 Page Directories -> 1024 Page tables

但由于总共有4个级别,内核的其余部分具有跨32位,PAE和长模式的统一接口.

大佬总结

以上是大佬教程为你收集整理的Linux内核内存管理分页级别全部内容,希望文章能够帮你解决Linux内核内存管理分页级别所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。