TLB 有什么用?使用 TLB 之后的地址翻译流程是怎样的
TLB 有什么用?使用 TLB 之后的地址翻译流程是怎样的
程序员朱永胜有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步, 认准
https://blog.zysicyj.top
全网最细面试题手册,支持艾宾浩斯记忆法。这是一份最全面、最详细、最高质量的 java
面试题,不建议你死记硬背,只要每天复习一遍,有个大概印象就行了。https://store.amazingmemo.com/chapterDetail/1685324709017001
TLB(Translation Lookaside Buffer)是一种高速缓存,用于存储最近使用的页表项,以加速地址翻译的过程。TLB 的存在可以减少对页表的访问次数,提高地址翻译的速度,从而提高系统的性能。
使用 TLB 之后的地址翻译流程如下:
- 当 CPU 生成虚拟地址时,首先检查 TLB 中是否存在对应的页表项。
- 如果 TLB 中存在对应的页表项(TLB 命中),则直接从 TLB 中获取物理页框号,然后将页内偏移量加上物理页框的起始地址,得到最终的物理地址。
- 如果 TLB 中不存在对应的页表项(TLB 未命中),则需要访问页表来获取对应的页表项,然后将其加载到 TLB 中,并重新进行地址翻译。
通过 TLB,CPU 可以快速地获取最近使用的页表项,减少了对页表的访问次数,提高了地址翻译的速度。这样可以加速内存访问,提高系统的性能。