Linux页替换的设计

图: Andrea Arcangeli
Andrea Arcangeli[专访]设计的虚拟内存子系统已经合并到2.4.10内核. 一位主修操作系统课程的学生在邮件列表上问道为什么Linux内核中的LRU(最近最少使用)页替换算法使用两个串联链表? Andrea回答: 当时之所以设计成两个链表, 因为这样可以把活动和非活动缓存分开, 从而在交换出工作集(进程当前正使用的页的集合)之前能够检测出缓存的污染状况. 他继续说, 我们可以更快地收集非活动列表中的页(比活动列表中的页). 然后虚拟内存通过释放缓存来保持两个列表的大小平衡, 显然某些时候活动列表也需要被释放.
关键字: kernel, linux, lru
Islab.org
赵珂网志共423篇文章, 350条留言, 阅读1,022,597次, 全部文章


第二人生实时统计



