2.3 Linux页表:
L i n u x假定系统中有三级页表。所访问的每级页表包含下一级页表的页帧号。图1 - 2 - 3显示
了一个虚拟地址如何被分解成几个字段,每个字段包含一个特定页表的偏移。为了将一个虚
拟地址转换成一个物理地址,处理器必须取出每一个字段的内容,把它变换成包含页表的物
理页的偏移并读出下一级页表的页帧号。这个过程被重复三次,直到包含该虚拟地址的物理
页的页帧号被找到。然后虚拟地址的最后一个字段、字节偏移,被用来查找页中的数据。
L i n u x运行的每一个平台都必须提供转换宏,使得内核可以遍历一个特定进程的页表。这
样,内核不必知道页表项的格式以及它们如何组织。这是一种很成功的方法: L i n u x为A l p h a
处理器提供三级页表,而对Intel x86处理器,只提供两级页表,但使用相同的页表处理代码
本文介绍了Linux系统中三级页表的工作原理。通过详细解释虚拟地址如何转换为物理地址的过程,展示了不同处理器架构(如Alpha和Intel x86)下页表的具体实现方式。
8812

被折叠的 条评论
为什么被折叠?



