


























There is a notion of TLB reach, which is basically how much memory is being mapped by the translations a TLB is caching. Where this is relevant is in TLBs whose entries' sizes may vary. Fill the TLB with base pages and it won't get far; the larger the page sizes used in the translations, the further the TLB can reach.
Some consumer-oriented vendors defeat the entire point of superpages by having fixed numbers of TLB entries for each translation size. Clearly such TLBs have the amount of memory they can map set in stone regardless of any kernel or userspace behaviour, apart from deliberately pessimally refusing to use some translation sizes.
So it's not just that TLBs are too small. They're also often not organised in ways that would allow kernels and userspace to make the most effective use of them.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。