Gab*_*abe 101
TLB(Translation Lookaside Buffer)是从虚拟内存地址到物理内存地址的转换缓存.当处理器更改地址的虚拟到物理映射时,它需要告知其他处理器使其缓存中的映射无效.
这个过程被称为"TLB击落".
Car*_*rum 57
一个简单的例子:
您的系统中的所有处理器都共享了一些内存.
您的一个处理器限制访问该共享内存的页面.
现在,所有处理器都必须刷新它们的TLB,以便允许访问该页面的TLB不再这样做.
导致TLB在其他处理器上刷新的一个处理器的动作是所谓的TLB击落.
我认为这个问题需要更详细的答案.
page table:存储虚拟内存(软件)和物理内存(硬件)之间映射的数据结构
但是,页表可能非常大并且遍历页表(以查找虚拟地址的相应物理地址)可能是一个耗时的过程.为了使这个过程更快,使用了一个名为TLB(Translation Lookaside Buffer)的缓存,它存储了最近访问的虚拟内存地址.
可以清楚地看到,TLB条目需要始终与它们各自的页表条目同步.现在TLB是一个每核心缓存即.每个核心都有自己的TLB.
每当任何核心修改页表条目时,该特定TLB条目在所有核中都无效.这个过程称为TLB击落.
TLB刷新可以通过各种虚拟内存操作来触发,这些操作可以更改页面表项,例如页面迁移,释放页面等.