[发明专利]虚拟机内存的共享方法与计算机系统有效
申请号: | 201110442250.7 | 申请日: | 2011-12-26 |
公开(公告)号: | CN103064796A | 公开(公告)日: | 2013-04-24 |
发明(设计)人: | 李翰林;姜瑞豪;阙志克;潘颖轩;曹伯瑞 | 申请(专利权)人: | 财团法人工业技术研究院 |
主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F9/455 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 宋焰琴 |
地址: | 中国台*** | 国省代码: | 中国台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 内存 共享 方法 计算机系统 | ||
技术领域
本发明涉及一种可共享虚拟机中未使用内存的方法与一种使用该方法的计算机系统。
背景技术
随着计算机硬件装置的成本越来越降低以及大型服务器的需求越来越高,虚拟机(Virtual Machine)也越来越被重视。虚拟机为一种接口,应用于一软件与计算机系统之间,并可提供此计算机系统的各种资源给上述软件使用。此软件通常为一操作系统,因此,操作系统可以通过虚拟机来存取计算机系统上的资源。然而,在一计算机系统上可以安装多个虚拟机,每个虚拟机上可安装不同的操作系统。举例来说,微软的windows操作系统与linux操作系统便可同时安装在一个计算机系统上不同的虚拟机中。
另一方面,在开发新的操作系统时还可在一计算机系统上测试不同版本的操作系统,其中各个操作系统也被安装在不同的虚拟机上,当其中一个测试的操作系统发生错误时便不会导致整个计算机系统当机。另外,随着云端计算(Cloud Computing)的应用越来越广,服务器的机动性(mobility)也越来越重要。而由于虚拟机能让操作系统与计算机系统之间的耦合关系被松绑,因此一个操作系统可以随着虚拟机动态的被移动到另外一个计算机系统,藉此平衡服务器的负载。
然而,虽然理论上计算机系统上可以执行多个虚拟机,但是可执行的虚拟机数量还是会受到限制,其中一个限制的原因便是内存容量的问题。在一计算机系统上所配置的内存是有限的,若平均的将所有的内存分配给所执行的虚拟机,则每个虚拟机所能运用的内存便可能不足。然而,这些虚拟机中可能会使用到相同的程序代码或是数据(例如,window操作系统的核心程序),因此每一个虚拟机上都存有这些相同的数据。若能将这些虚拟机中相同的数据共享,使各个虚拟机只使用一份程序代码或数据于计算机系统的内存中,便能更有效的利用计算机系统的内存。其中一种共享内存的作法是,针对每个虚拟机中的每一个内存分页(memory page),根据一个哈希函数(hash function)来计算出一个哈希值,并比对各个虚拟机中的内存分页是否有相同哈希值。若不同的虚拟机中存在相同的哈希值的内存分页,则这些内存分页便可能是存有相同的资料,可以进一步的共享。然而,此方法必须对每个虚拟机的每个内存分页都计算哈希值,所以非常的耗时。因此如何有效的共享虚拟机中的内存,为此领域研究人员所关心的问题。
发明内容
本发明提出一种虚拟机内存的共享方法,此共享方法用于执行至少一个虚拟机的计算机系统中。此共享方法包括以下步骤。取得虚拟机所对应的内存映像图,此内存映像图存有所对应的虚拟机中内存页面的使用状态。根据虚拟机所对应的内存映像图,标记虚拟机上未被使用的内存页面为第一空闲页。以及,共享虚拟机中的第一空闲页。
以另外一个角度来说,本发明还提出一种计算机系统,用以执行至少一个虚拟机。此计算机系统包括有内存单元、处理单元、内存控制单元。其中内存单元包括有多个物理内存页面,而处理单元耦接至该内存单元。内存控制单元则耦接至上述处理单元与内存单元,并用以取得上述虚拟机所对应的内存映像图,此内存映像图存有所对应的虚拟机中内存页面的使用状态。内存控制单元还用以根据虚拟机所对应的内存映像图,标记虚拟机上未被使用的内存页面为多个第一空闲页,并共享各虚拟机中的第一空闲页。
附图说明
图1为依照本发明第一实施例所绘示的计算机系统方块图。
图2为依照本发明第一实施例所绘示的计算机系统与虚拟机的示意图。
图3为依照本发明第一实施例的虚拟机内存共享方法的流程图。
图4A为依照本发明第一实施例所绘示的第一空闲页的示意图。
图4B为依照本发明第一实施例所绘示的一个虚拟机的内存页面的共享示意图。
图5为依照本发明第二实施例的内存共享方法的流程图。
图6为依照本发明第三实施例的内存共享方法的流程图。
图7为依照本发明第三实施例所绘示的未使用内存分页的示意图。
图8为依照本发明第三实施例所绘示的共享内存方法各步骤的时间轴示意图。
【主要组件符号说明】
100:计算机系统
120:处理单元
140:内存单元
142、143、144、145:物理内存页面
220:虚拟机监控程序
230、240:虚拟机
232、234、236、242、731、740:内存页面
250、260:操作系统
262、252:虚拟内存页面
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于财团法人工业技术研究院,未经财团法人工业技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110442250.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:内置复合过滤层的废水再生清洁机构
- 下一篇:内置预热层的炭再生处理装置