TLB作用及工作原理

几个基础知识

在这里插入图片描述
缩写:虚拟地址(Virtual Address,VA)、物理地址(Physucal Address,PA)

什么是mmu?答:MMU是Memory Management Unit(内存管理单元),作用是完成从虚拟地址到物理地址的映射,映射功能是依靠MMU中的页表完成的。

什么是TLB?答:TLB是转换检测缓冲区(Translation Lookaside Buffer),又被称为快表,通常位于MMU中。

为什么会出现TLB?答:因为访问内存时通过MMU中的多级页表进行映射速度太慢了,当CPU对一块内存进行频繁访问时,没必要总是查MMU,这就引出了TLB,他能完成一个小区域虚拟地址到物理地址的直接映射,他很快。

TLB和MMU是如何工作的?
当一个虚拟地址放入MMU进入转换时,同时通过从TLB快表和MMU中的页表查询对应的物理地址,如果从TLB找到了,那慢表咱们就不查了;如果从TLB中没找到,那就通过慢表查,查到了将物理地址更新到快表,这样下次再映射这块儿虚拟内存不就快了嘛。(这只是简单的理解,实际TLB分为硬件TLB或软件TLB,TLB可能在MMU中,也可能由操作系统实现)(TLB可以视作对页表的告诉缓存,所有有人说TLB是页表的cache)

什么是Cache?
cache 是一种小容量高速缓冲存储器,由快速的 SRAM 组成,直接制作在 CPU 芯片内,速度较快,几乎与 CPU 处于同一个量级。在 CPU 和主存之间设置 cache,总是把主存中被频繁访问的活跃程序块和数据块复制到 cache 中。

cache和MMU的关系?答:
在这里插入图片描述
在这里插入图片描述

参考文献:
https://zhuanlan.zhihu.com/p/596039345

仅作学习参考使用,谢谢

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值