[发明专利]页面内容共享的方法及装置在审
申请号: | 201310186233.0 | 申请日: | 2013-05-17 |
公开(公告)号: | CN104166632A | 公开(公告)日: | 2014-11-26 |
发明(设计)人: | 陈荔城;张立新;陈明宇;阮元 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F12/10 | 分类号: | G06F12/10 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 李会娟 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 页面 内容 共享 方法 装置 | ||
技术领域
本发明实施例涉及通信领域,尤其涉及一种页面内容共享的方法及装置。
背景技术
当前,处理器内集成的核个数不断增长,但内存容量的增长速度较慢,使得每个核分配到的有效内存容量呈下降趋势,进而内存容量成为服务器发展的瓶颈。
现有技术中,基于内容的页面共享技术(Content-Based Page Sharing,简称CBPS)是目前被普遍采用的用于降低内存容量压力的主要方法,例如,通过将具有相同内容的多个物理页面(下述简称“页面”)共享到一个物理页面空间,从而实现降低服务器的内存容量的消耗,提高内存有效利用率。
具体地,CBPS需要在操作系统内核(OS Kernel)或虚拟机管理程序(Hypervisor)内实现,对上层应用是完全透明的(即对其他应用程序无需修改)。例如,操作系统内核启动后台线程后,后台线程定期扫描页面内容,并进行比较,如果发现两个或更多个页面的页面内容相同,就将每个页面的访问属性设置为写时复制(Copy-On-Write,简称COW),而将它们对应的页表项都设置为指向同一个物理页面的页框(Page Frame),从而实现页面共享。
通常,一个页面的大小为4KB,为了比较两个页面是否相同,如果直接对页面的全部内容进行逐字节的完整比较,比较开销将较大。为了缓解这一问题,后台线程可以先对每个页面内容计算一个哈希(Hash)值,优先比较不同页面的Hash值,如果Hash值相同再对页面的内容进行完整的逐字节比较,确认页面内容是否相同。
然而,后台线程负责计算页面Hash值的过程中带来的问题如下:第一、占用处理器的计算资源,导致服务器上正常应用程序或虚拟机得不到计算资源;第二、污染高速缓冲存储器(Cache)内有效数据:为了计算页面的Hash值,需要流式(Stream)将整个页面内容从头到尾读入到Cache中,计算好Hash值后就不再访问。这种大量数据的流式访问,会将Cache内的应用或虚拟机的有效数据刷掉。由此,上述后台线程的计算干扰服务器上其他应用和虚拟机的运行,导致服务器性能不稳定。
发明内容
有鉴于此,本发明实施例提供一种页面内容共享的方法及装置,用于提高了后台线程比较任意物理页面内容的效率,同时提高了服务器的使用性能。
第一方面,本发明实施例提供一种页面内容共享的方法,包括:
对于第一物理页面和第二物理页面,读取所述第一物理页面的第一E-hash值、第二物理页面的第二E-hash值;
判断所述第一E-hash值和所述第二E-hash值是否相同;
如果所述第一E-hash值和所述第二E-hash值相同,则判断所述第一物理页面和所述第二物理页面的页面内容是否相同;
若所述第一物理页面和所述第二物理页面的页面内容相同,则将所述第一物理页面和所述第二物理页面的页面内容共享。
结合第一方面,在第一种可能的实现方式中,所述读取所述第一物理页面的第一E-hash值、第二物理页面的第二E-hash值,包括:
根据所述第一物理页面的页面号PFN1在物理内存中读取所述第一物理页面的第一E-hash值;
根据所述第二物理页面的页面号PFN2在物理内存中读取所述第二物理页面的第二E-hash值。
结合第一方面及上述可能的实现方式,在第二种可能的实现方式中,所述读取所述第一物理页面的第一E-hash值、第二物理页面的第二E-hash值的步骤之前,所述方法还包括:
内存控制器获取所述第一物理页面的第一E-hash值,并根据所述第一物理页面的页面号PFN1将所述第一E-hash值存放在物理内存中,以使软件访问;
内存控制器获取所述第二物理页面的第二E-hash值,并根据所述第二物理页面的页面号PFN2将所述第二E-hash值存放在物理内存中,以使软件访问。
结合第一方面及第二种可能的实现方式,在第三种可能的实现方式中,所述根据所述第一物理页面的页面号PFN1将所述第一E-hash值存放在物理内存中,包括:
内存控制器根据所述第一物理页面的页面号PFN1,采用页面着色技术Page Coloring将所述第一E-hash值存放在物理内存中;
所述根据所述第二物理页面的页面号PFN2将所述第二E-hash值存放在物理内存中,包括:
内存控制器根据所述第二物理页面的页面号PFN2,采用页面着色技术Page Coloring将所述第二E-hash值存放在物理内存中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310186233.0/2.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法