首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解释FreeBSD中的CPU缓存分页,特别是分页队列。

解释FreeBSD中的CPU缓存分页,特别是分页队列。
EN

Stack Overflow用户
提问于 2009-04-19 16:20:06
回答 1查看 1.3K关注 0票数 1

FreeBSD使用分页队列实现页面着色。队列是根据处理器的L1和L2缓存的大小排列的;当需要分配一个新页面时,FreeBSD试图得到一个对缓存进行优化的队列。

请有人解释一下上面的几行,分页队列的概念是什么?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-04-19 17:27:14

操作系统必须管理CPU缓存的大小,以减少缓存漏掉 (也解释页面着色)。更简单地说,存储在缓存中的数据(以称为页面的单位)必须根据其使用频率、是否可能很快再次使用以及从主存/HD/SomeOtherDevice重新检索数据的“成本”来仔细选择。在内存带宽是瓶颈的应用程序中,这些选择非常重要。

这种类型的事情通常是通过优先级队列来完成的,该队列实现了OS开发人员选择的分页替换策略。这些队列确定在将新数据移动到缓存时替换哪些页面,以及数据将位于缓存中的位置。如果您想找出正在使用的策略,您应该查阅FreeBSD的文档。

为了对齐,需要将高速缓存(或主内存)中的数据放在特定的边界上,以便有效地访问(即移动到CPU寄存器)。如果数据没有对齐,则需要额外的计算来对齐数据。

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

https://stackoverflow.com/questions/765650

复制
相关文章

相似问题

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