[发明专利]一基于大页的冷热页追踪及压缩回收方法有效
申请号: | 201710142306.4 | 申请日: | 2017-03-10 |
公开(公告)号: | CN106970881B | 公开(公告)日: | 2020-04-28 |
发明(设计)人: | 陈文智;王总辉;赵朋磊;徐浩;李国玺 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/0882 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 蒋琼 |
地址: | 310013 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 冷热 追踪 压缩 回收 方法 | ||
本发明公开了一种基于大页的冷热页追踪及压缩回收方法,该方法采用双标志位PG_active和Ref确定大页的活动程度,并根据大页的活动程度移动大页于热页链表与冷热链表之间,基于上述的内容调用相关的函数对大页进行冷热页追踪及压缩回收。该方法使内存回收机制更加完善,内存回收力度大大加强,使相同的物理内存能够执行更多的程序。
技术领域
本发明属于计算机操作系统技术领域,具体涉及一种基于大页的冷热页追踪及压缩回收方法。
背景技术
现代CPU是通过寻址来访问内存的。32位CPU的寻址范围是 0~0xFFFFFFFF,可支持的物理内存最大是4G。但在实践过程中,经常会有这样的问题,多个应用程序同时需要占用的内存总量大于4G或者程序需要使用4G内存但是可用物理内存小于4G。为了解决内存不够用的问题,现代CPU引入内存管理单元(Memory Management Unit,MMU),MMU 的核心思想是利用虚拟地址替代物理地址,即CPU寻址时使用虚拟地址,由MMU负责将虚拟地址映射为物理地址。MMU的引入,解决了对物理内存的限制,对程序来说,就像自己在使用4G内存一样。内存分页(Paging) 是在使用MMU的基础上,提出的一种内存管理机制。它将虚拟地址和物理地址按固定大小(如传统的4KB)分割成页(page)和页帧(page frame),并保证页与页帧的大小相同。这种机制,从数据结构上,保证了访问内存的高效,并使操作系统能支持非连续性的内存分配。
目前,linux内核中用于解决内存不够的技术主要是基于小页(4KB) 的页面回收和页交换技术。内核通过将很少使用的部分内存页换出到块设备,这样就相当于提供了更多的主存。内核在基于小页的页交换和页面回收的实现中,使用了很多关键性的技术:主动回收与被动回收相结合的交换与回收策略;使用双标志位的冷热页判断机制;引入预读机制的缺页异常处理;基于优先级的具有热插拔属性的交换区管理。
对于用作服务器的机器来说,其内存相对于普通计算机要高得多。这时候采用原始的基于4K的分页机制已经渐渐地无法很好地适用当前的应用场景。例如:对于具有128GB内存的linux服务器来说,4KB分一页那么共分成32M(32,000,000)个页,这是一个非常庞大的数字,渐渐的管理这些页需要消耗的资源会削弱分页机制带来的好处。同时针对用户需要大量使用内存的情况,原有的小页会增加缺页次数与内存的访问次数。因此在linux内核2.6版本以后,linux内核也引入了内存大页的机制。但是,对于大页的冷热页追踪,当前内核并没有实现,而是将大页分解成多个小页进行冷热页追踪。因此实现一个基于大页的冷热页追踪是非常重要的,它对于更好的进行页交换与页面回收具有举足轻重的作用。
发明内容
鉴于上述,本发明提出了一种基于大页的冷热页追踪及压缩回收方法,该方法基于双标志位确定大页活动程度,能够更加准确地将冷热大页进行分类,且能够实现冷页的压缩回收。
本发明提出了一种基于大页的冷热页追踪及压缩回收方法,包括以下步骤:
(1)针对每个内存节点,系统调用函数hp_kswapd,该函数hp_kswapd 启动内核守护线程,该守护线程周期性地检查大页内存的使用情况;
(2)每个周期内,函数hp_kswapd调用函数hp_balance_node对大页内存进行扫描,针对大页内存不足的节点执行步骤(3)~步骤(6);
(3)函数hp_balance_node调用函数hp_shrink_lruvec对大页内存不足的节点的Lru链表中的大页进行处理,得到处于热页链表上的大页数目 m,处于冷页链表上的大页数目n,若m大于n,执行步骤(4),否则,执行步骤(5);
(4)函数hp_shrink_lruvec调用函数hp_shrink_active_list判断热页链表上的大页的活动程度,并将热页链表上的活动程度低的冷页大页移动到冷页链表上;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710142306.4/2.html,转载请声明来源钻瓜专利网。