Linux多级页表机制

文献:http://www.verydemo.com/demo_c167_i219134.html

      Linux采用了一种同时适用于32bit和64bit系统的分页模型。32bit系统一般采用两级页表就足够了,但64bit系统需要更多的分页。Linux 2.6.10版本采用三级分页,从2.6.11版本开始采用了四级分页。

    

    图中展示的4 种页表分别被称作:
    • 页全局目录(Page Global Directory)
    • 页上级目录(Page Upper Directory)
    • 页中间目录(Page Middle Directory)
    • 页表(Page Table)
    页全局目录包含若干页上级目录的地址,页上级目录又依次包含若干页中间目录的地址,而页中间目录又包含若干页表的地址。每一个页表项指向一个页面。线性地址因此被分成五个部分。图中没有显示位数,因为每一部分的大小与具体的计算机体系结构有关。

编号

处理器

页大小

寻址使用的位数

分页级别

虚拟地址分级

1

x86

4KB

32

2

10+10+12

2

x86(extended)

4MB

32

1

10&…………………………………………………………………………

猜你喜欢

转载自pannengwei478.iteye.com/blog/2072352