[发明专利]一种基于内存页位图变更的大内存页整合方法有效

专利信息
申请号: 201510431238.4 申请日: 2015-07-21
公开(公告)号: CN105095099B 公开(公告)日: 2017-12-29
发明(设计)人: 王备;杨策;陈建海;程雨夏;何钦铭;吴双 申请(专利权)人: 浙江大学
主分类号: G06F12/02 分类号: G06F12/02
代理公司: 杭州天勤知识产权代理有限公司33224 代理人: 胡红娟
地址: 310027 浙*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 内存 位图 变更 整合 方法
【说明书】:

技术领域

发明涉及操作系统内存管理技术领域,具体涉及一种基于内存页位图变更的大内存页整合方法。

背景技术

随着计算机硬件技术的不断发展,当前个人计算机以及服务器上所配置的内存越来越大,目前普遍配置的内存可以达到数GB,有些服务上可以达到几百GB甚至上TB的内存。

为了提高对内存使用的灵活性以及使用效率,现代操作系统多使用内存分页机制,即将系统的所有的物理内存划分为若干固定大小的内存页。应用程序需要使用内存时,向操作系统提出申请,操作系统根据请求来分配若干物理内存页,并将这些物理页面映射到应用程序的虚拟地址空间中,物理内存到虚拟地址空间的映射对于应用程序来说是透明的。

应用程序读写某个虚拟内存地址时,操作系统会通过查找页表的方式,找到该虚拟内存地址所对应的物理内存地址,然后再转化成为对该物理内存地址的读写。由于应用程序的虚拟地址空间可能很大,所以现代操作系统一般会将地址转换过程分级,先查找页目录表,再查找页表,再查找具体的页表项。

虽然分级方式方便了地址的转换,但是同时也降低了查找的速度:每一次查找都要经过三级甚至更多次的转换。为了加速这个过程,CPU中引入了TLB(translation lookside buffer)的概念。即将最近地址转换过程中的源地址和目的地址缓存到TLB中,下次再做转换时,便可以直接使用这个缓存,从而避免复杂的查找页表操作。

随着计算机内存容量的不断增大,应用程序所使用的内存也逐渐变大,这意味着更多次数的地址转换。这也就加大了TLB的压力。然后,CPU内部空间有限,并且TLB造价比较昂贵,所以TLB大小的增长速度远远小于内存容量的增长速度。

为了能充分的利用TLB加速地址的转换,可以使操作系统扩大每一个内存页的大小。如将原来的每个物理页面大小为4KB增加为2MB。这样,每一个TLB条目能映射相当于原来512倍大小的内存。

但是,如果将所有内存页大小都设置成为2MB,将大大增加内存页面的内部碎片,虽然可以较高效率的使用内存,但同时也造成了内存资源的极大浪费。

发明内容

针对现有技术的不足,本发明提出一种基于内存页位图变更的大页内存整合方法,能够有效提高系统的内存访问效率,同时还能够保证内存的使用率,避免浪费内存。

本发明的基于内存页位图变更的大页内存整合方法,按照预设周期获取系统内存(即系统的物理内存)的缺页频率,当缺页频率大于第一阈值时通过如下步骤进行大页内存整合:

S1:获取该周期内各个内存页的访问信息,并根据各个内存页的访问信息计算各个内存页的访问热度;

S2:根据各个内存页的访问热度更新系统的位图,并确定更新前后的位图之间的差异位个数,当差异位个数大于第二阈值时根据更新后的位图对系统内存进行大页拆分或小页合并。

本发明中更新前后的位图之间的差异位个数基于异或运算进行,首先对更新前后的位图进行异或运算,然后统计异或运算结果中1的个数即为更新前后的位图之间的差异位个数。

本发明的大页内存整合方法通过对大页内存进行整合使系统内存中采取大页面内存(大页内存)与小页面内存(小页内存)共存的形式,对于经常使用的热页内存采用大页存储,对于不经常使用的内存使用普通小页面存储,并且在发现某些普通小页面内存频繁受到访问时,通过一定的机制将这些小页面提升为大页面,以加速后续的访问。对于已经被提升为大页面的内存,经过一段时间后,如果发现其不再频繁被访问,则将其拆分为若干小页面,以便释放更多的资源。

本发明的大内存页整合方法一次可以整合分配若干个大内存页面。一次整合分配结束后,可能仍有部分访问热度高,但是没有被整合的小页面存在。此时可能需要经过多次整合分配才能达到比较完善的效果,且由于整个过程中,各内存页面的使用情况(即访问情况)也会改变,因此按照预定周期进行整合,能够根据系统中各内存页面的使用情况动态调整,使系统内存分配情况与内存页面的实际使用情况相匹配,大大提供了系统的内存访问效率,同时还能够保证内存的使用率,避免浪费内存。

缺页频率通过如下方法计算:

按照预设周期定时获取操作系统(即系统)的缺页次数(在运行的时候系统会直接给出),与上一周期获取的缺页次数相减,即得到当前周期内系统内存的缺页频率。

预设周期根据实际应用情况调整,作为优选,本发明中所述预设周期为3~5秒。

作为优选,各个内存页的访问信息包括该内存页在当前周期内被访问的频率、最近一次被访问的时间和被共享的次数。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510431238.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top