首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >什么是TLB击落?

什么是TLB击落?
EN

Stack Overflow用户
提问于 2010-09-20 10:40:02
回答 3查看 32.5K关注 0票数 78

什么是SMP中的TLB击落?

我找不到关于这个概念的太多信息。任何好的例子都会非常感谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-20 10:49:14

一个简单的例子:

  1. 您的系统中的所有处理器都共享了一些内存。
  2. 您的某个处理器限制了对该共享内存的一页的访问。
  3. 现在,所有处理器都必须刷新它们的TLB,以便允许访问该页的处理器不能再这样做。

一个处理器导致TLB在其他处理器上被刷新的行为称为TLB击落。

票数 74
EN

Stack Overflow用户

发布于 2010-09-20 10:50:39

TLB (转换后备缓冲器)是从虚拟内存地址到物理内存地址转换的高速缓存。当处理器更改地址的虚拟到物理映射时,它需要告诉其他处理器在其缓存中使该映射无效。

这个过程被称为"TLB击落“。

票数 109
EN

Stack Overflow用户

发布于 2018-01-27 00:33:36

我认为这个问题需要一个更详细的答案。

页表:存储虚拟内存(软件)和物理内存(硬件)之间映射的数据结构

但是,页表可能非常大,并且遍历页表(查找虚拟地址的对应物理地址)可能是一个耗时的过程。为了使此过程更快,使用了名为TLB (转换后备缓冲区)的缓存,该缓存存储最近访问的虚拟内存地址。

可以清楚地看到,table条目需要始终与它们各自的页表条目同步。现在,TLB是每核缓存 ie。每个内核都有自己的TLB。

每当页表项被任何核修改时,该特定TLB项在所有核中都无效。这个过程被称为TLB击落。

TLB刷新可由改变页表项的各种虚拟内存操作触发,如页迁移、释放页等。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3748384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档