[发明专利]基于页面分类的内存页面回收方法及系统有效
申请号: | 201710024148.2 | 申请日: | 2017-01-13 |
公开(公告)号: | CN106843756B | 公开(公告)日: | 2019-12-31 |
发明(设计)人: | 郝志宇;徐晶;崔磊;彭亚琼 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/02 |
代理公司: | 11200 北京君尚知识产权代理有限公司 | 代理人: | 余功勋 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 页面 分类 内存 回收 方法 系统 | ||
本发明提供一种基于页面分类的内存页面回收方法及系统,该方法步骤为:定时循环扫描主机中所有内存页面所对应的“struct page”结构,根据该“struct page”结构分析内存页面在主机中的页面类型;当内存页面在主机中的页面类型为匿名页面时根据主机内核提供的逆向映射关系判断内存页面是否属于客户机进程,求出属于客户机进程的内存页面在客户机中的“struct page”结构,根据该“struct page”结构分析内存页面在客户机中的页面类型;根据上述页面分类信息将所有页面链接到相应类型链表上;读取每种类型页面的数量,按照客户机页面分类回收顺序模型确定当前时刻的回收策略,根据该回收策略回收内存页面。
技术领域
本发明涉及计算机操作系统以及虚拟化技术领域,尤其涉及一种基于页面分类的内存页面回收方法及系统。
背景技术
随着计算机硬件性能的不断提高,如何让软件更加有效的使用现代硬件的强大计算能力一直都是产业界和学术界关注的焦点。硬件虚拟化技术的出现为该问题的解决提供一个全新的解决方案。在硬件虚拟化技术的支撑下,多台虚拟的客户机可以在同一台物理主机上同时运行,这极大的提高了主机的硬件利用效率。然而,多台虚拟机竞争物理主机资源的矛盾又日益的凸显了出来。
内存是计算机系统中最重要的硬件资源之一,如何有效的管理和分配内存一直都是操作系统领域的一个研究方向。在历史的发展中,操作系统对内存的管理经过了实地址空间管理、分段式管理以及分页式管理,并最终在分页机制的支持下实现了虚地址空间管理和页面交换机制——即将内存中的页面交换至磁盘以提升内存可使用的总量。在虚拟化环境下对内存页面的管理是对上述历史发展的沿革,其关键的任务在于两点:1)及时将一台客户机中不再使用的内存进行回收并分配给有内存需求的另一台客户机;2)提高换页机制的效率,即不要对无效页面进行换页操作,例如,将客户机中的空闲页面交换到磁盘上就是一种典型的无效操作,其浪费了大量的系统资源。
KVM是Kernel-based Virtual Machine的简写,其意为基于内核的虚拟机。KVM是专门为Linux内核开发的虚拟化基础设施,通过将KVM模块插入内核就可以使得Linux变成一个虚拟机监控器,并在其上运行虚拟的客户机。当前,在以KVM为基础的虚拟化环境中主要实现了三种对内存的管理机制:
(1)页面交换:物理机有内存压力时进行,根据LRU算法将较长时间未使用的页面交换到磁盘上。物理机的内存压力能及时降低,但有磁盘访问的开销。另外,物理机对客户机内存的实际使用情况并不了解,无法做到高效地管理客户机内存。这种内存管理机制就是传统的操作系统内存管理机制,其并未针对虚拟化环境进行优化。
(2)气球技术(memory ballooning):客户机内安装有驱动程序,由物理机指示该驱动在客户机上控制内存“气球”的大小,在物理机上管理“气球”所对应的内存。内存压力从物理机转移到客户机中,可根据客户机内存使用情况较为高效地回收内存页面。这种机制最主要的问题在于:1)如何确定“气球”的大小,即应该从一台客户机中拿走多少内存;2)由客户机将内存页面写入磁盘的开销要比由主机来执行的开销大。
(3)KSM(Kernel Samepage Merging):即内核相同页面合并,用一个内核线程扫描客户机进程所使用的内存区域,合并相同内容页面,写时复制。该机制的问题在于:1)需要消耗较多的处理器资源且时效性较差;2)不一定能够显著地减轻内存压力,需要根据页面内容的重复程度而定。
发明内容
本发明是针对KVM虚拟化环境提出的。如上所述,当前KVM虚拟化环境中的三种内存管理机制存在着各自的缺点,但归结起来这三种方法所存在的最根本的问题在于:主机系统并不真正了解客户机系统对内存的具体使用情况。
针对上述问题,本发明提供一种基于页面分类的内存页面回收方法及系统,该方法及系统提高了KVM虚拟化系统内存页面回收的效率,从而使得当主机系统处于较大内存压力时的性能得到提升。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710024148.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种回转支承自动夹持设备
- 下一篇:一种多线切割机载料台