【kernel】CPU何时访问页表?

虚拟地址转换物理地址的过程:打开mmu后,cpu访问的都是虚拟地址,当cpu访问一个虚拟地址的时候,会通过cpu内部的mmu来查询物理地址,mmu首先通过虚拟地址在tlb中查找,如果找到相应表项,直接获得物理地址;如果tlb没有找到,就会通过虚拟地址从页表基地址寄存器保存的页表基地址开始查询多级页表,最终查询到找到相应表项,会将表项缓存到tlb中,然后从表项中获得物理地址。

 

总结:cpu在访问虚拟地址时通过MMU(硬件实现)访问页表获取实际的物理地址

 

posted on 2022-10-24 11:49  甲鱼写代码  阅读(66)  评论(0编辑  收藏  举报

导航