首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TLB怎么这么快?

TLB怎么这么快?
EN

Stack Overflow用户
提问于 2017-05-14 10:34:33
回答 2查看 408关注 0票数 0

在处理虚拟内存时,您经常使用TLB (我是在询问软件管理的TLB)来加快速度。与将虚拟地址插入页面表以获取它映射到的物理地址不同,您可以在中间使用TLB来存储最近使用的页面。

所以,您要做的是,获取您的虚拟地址,并查看TLB是否包含您的地址,如果它包含了您的地址,它将返回虚拟地址映射到的物理地址,但是如果它没有命中,它将转到页面表,将该页加载到TLB中,并返回物理地址。

我的问题是:如果TLB一直在搜索你的虚拟地址,它怎么能这么快呢?这些条目似乎并不是按一定的顺序排列的,所以我想,浏览它们的速度会很慢。

就上下文而言,这是我脑海中的TLB查找的图像(图片取自维基百科)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-14 10:57:19

这些条目似乎并不是按一定的顺序排列的,所以我想,浏览它们的速度会很慢。

这不是硬件中通常的工作方式,“通过”条目并不是一件真正的事情。嗯,你可以那样做,但是它已经不快了,所以它没有抓住重点。

所有条目都可以同时进行比较,匹配的条目(如果存在的话)可以使用日志深度电路(如果允许任意扇入,则为恒定深度,但这有其自身的问题)进行提取。

票数 3
EN

Stack Overflow用户

发布于 2017-05-14 10:46:25

TLB只是一个缓存。缓存背后的想法是,搜索少量最近的引用要比搜索更大、“更远”、数量更少的引用更容易。

如果我明白的话,你的问题是:"why is caching fast?"

也许有人能从架构的角度比我解释得更好?

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

https://stackoverflow.com/questions/43962888

复制
相关文章

相似问题

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