CN104050189A - 页面共享处理方法及装置 - Google Patents
页面共享处理方法及装置 Download PDFInfo
- Publication number
- CN104050189A CN104050189A CN201310081954.5A CN201310081954A CN104050189A CN 104050189 A CN104050189 A CN 104050189A CN 201310081954 A CN201310081954 A CN 201310081954A CN 104050189 A CN104050189 A CN 104050189A
- Authority
- CN
- China
- Prior art keywords
- page
- write access
- candidate page
- statistics
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3349—Reuse of stored results of previous queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
Abstract
本发明实施例提供一种页面共享处理方法及装置,该方法包括:获取候选页面所属的页面类别;将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享,其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。本发明实施例中,通过获取候选页面所属的页面类型,候选页面只需要与它所属页面类别中的页面进行比较,而无需与所有页面进行比较,这样减少了无效比较的次数,提高了效率,也降低了页面比较的开销。
Description
技术领域
本发明实施例涉及通信技术,尤其涉及一种页面共享处理方法及装置。
背景技术
随着多种系统对内存容量需求的不断增长,内存容量已成为主要瓶颈之一。对于多核系统,随着处理器内集成的核个数不断增长,而内存容量的增长速度较慢,导致每个核分配到的有效内存容量呈下降趋势,内存容量成为瓶颈;对于服务器,其运行的应用程序个数不断增加,而应用程序本身的工作集(Working Set)也在不断增大,这两个因素导致服务器对内存容量的需求不断增长;对于云计算平台,如数据中心(Data Center),大部分都采用虚拟化技术,为了降低成本,提高资源利用率,希望在单个物理机上同时运行尽量多数目的虚拟机,这样导致在虚拟机环境中,内存容量成为瓶颈。
现有技术中,降低内存容量压力的主要方法包括页面共享技术,即通过将具有相同内容的多个页面共享到一个物理页面空间,从而降低系统内存容量消耗,提高内存有效利用率。其中,候选页面要与候选页面集合中的所有页面进行比较,来获取与该候选页面内容相同的页面进行共享,具体地,可以是直接对整个页面的内容进行比较,也可以先计算各页面的哈希(Hash)值,然后比较Hash值,再对Hash值相同的页面进行页面内容的比较。
发明人在实现本发明实施例的过程中发现,在候选页面集合中,特别是候选页面集合较大的情况下,内容相同的页面并不多,采用现有技术,会导致搜索带来的开销太大,且存在大量的无效比较。
发明内容
本发明实施例提供一种页面共享处理方法及装置,用于解决页面共享时,搜索和比较页面的开销太大,无效比较太多的问题。
本发明实施例第一方面提供一种页面共享处理方法,包括:
获取候选页面所属的页面类别;
将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;
其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
结合第一方面,在第一方面的第一种可能的实施方式中,所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取候选页面所属的页面类别,包括:
获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述预设条件包括写访问次数在预设范围内;相应地,所述获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别包括:
获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。
结合第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述获取所述候选页面在预定时间内的写访问次数包括:
根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
结合第一方面的第一种可能的实施方式,在第一方面的第四种可能的实施方式中,所述预设条件为同一页面类别所包括的各页面的脏值相同;各页面包括多个子块,各子块分别对应一字符串中的一个数据位;所述数据位的值标识对应的子块是否被写访问,所述字符串的值为对应页面的脏值;相应地,获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别包括:
判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;
根据所述脏值,获取所述候选页面所属的页面类别。
结合第一方面至第一方面的第四种可能的实施方式中任一项,在第一方面的第五种可能的实施方式中,所述预设分类条件统计结果还包括:读访问统计结果、页面属性统计结果。
结合第一方面至第一方面的第五种可能的实施方式中任一项,在第一方面的第六种可能的实施方式中,所述预定时间为所述候选页面的生命周期。
本发明实施例第二方面提供一种页面共享处理装置,包括:
获取模块,获取候选页面所属的页面类别;
比较模块,用于将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;
其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
结合第二方面,在第二方面的第一种可能的实施方式中,所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取模块,具体用于获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述预设条件包括写访问次数在预设范围内;相应地,所述获取模块,具体用于获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。
结合第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,所述获取模块,具体用于根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
结合第二方面的第一种可能的实施方式,在第二方面的第四种可能的实施方式中,所述预设条件为同一页面类别所包括的各页面的脏值相同;各页面包括多个子块,各子块分别对应一字符串中的一个数据位;所述数据位的值标识对应的子块是否被写访问,所述字符串的值为对应页面的脏值;相应地,所述获取模块,包括:
判断单元,用于判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;
获取单元,用于根据所述脏值,获取所述候选页面所属的页面类别。
结合第二方面至第二方面的第四种可能的实施方式中任一项,在第二方面的第五种可能的实施方式中,所述预设分类条件统计结果还包括:读访问统计结果、页面属性统计结果。
结合第二方面至第二方面的第五种可能的实施方式中任一项,在第二方面的第六种可能的实施方式中,所述预定时间为所述候选页面的生命周期。
本发明实施例中,先获取该候选页面所属的页面类别,然后将该候选页面与该页面类别中所包括的多个页面分别进行比较,来获取与其内容相同的目标页面,即候选页面只需要与它所属页面类别中的页面进行比较,而无需与所有页面分别进行比较,这样大大减少了无效比较的次数,提高了效率,也降低了页面比较的开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的页面共享处理方法一实施例的流程示意图;
图2为本发明提供的页面共享处理方法另一实施例的流程示意图;
图3为本发明提供的页面共享处理装置一实施例的结构示意图;
图4为本发明提供的页面共享处理装置另一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的页面共享处理方法一实施例的流程示意图,如图1所示,该方法包括:
S101、获取候选页面所属的页面类别;
本发明实施例中,是将页面进行分类,以使每个页面都会有对应的页面类型,具体地,可以根据页面的写访问统计结果、读访问统计结果或者页面属性等来对页面进行分类。
具体地,本发明实施例中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。该预设条件可以是根据经验来设定的。
S102、将上述候选页面与上述页面类别所包括的多个页面进行比较,获取与上述候选页面具有相同内容的目标页面,并将该候选页面和该目标页面进行共享。
具体实现过程中,在同一页面类别范围内进行比较,一种方式是可以直接比较页面的内容,即候选页面与所属的页面类别中的部分或全部页面进行内容比较,而获取与该候选页面具有相同内容的目标页面;另一种方式是,可以先分别计算该候选页面所属页面类别中包括的所有页面的Hash值,然后让候选页面与和该候选页面Hash值相同的页面进行比较,而获取与该候选页面具有相同内容的目标页面。最后,将该候选页面和该目标页面共享到同一物理页面,来降低内存量的压力。
本实施例中,先获取该候选页面所属的页面类别,然后将该候选页面与该页面类别中所包括的多个页面分别进行比较,来获取与其内容相同的目标页面,即候选页面只需要与它所属页面类别中的页面进行比较,而无需与所有页面分别进行比较,这样大大减少了无效比较的次数,提高了效率,也降低了页面比较的开销。
进一步地,本发明另一实施例中,上述预设分类条件统计结果可以包括写访问统计结果,相应地,上述S101具体为,获取候选页面在预定时间内的写访问统计结果,根据该写访问统计结果获取所述候选页面所属的页面类别。在系统中,对于不同页面的访问次数和访问分布一般是不同的,特别是写访问,写访问会使页面的内容发生变化,也可能使原本内容相同的页面变得不同而无法共享,即写访问统计结果差别较大的页面,其页面内容相同的可能性不大,从而可以根据页面的写访问情况来对页面进行分类,以消除无效的页面比较,来降低系统在页面比较部分的开销。
需要说明的是,上述预设分类条件统计结果还可以包括读访问统计结果和页面属性等,其中根据读访问分类和下文中详细论述的根据写访问分类的过程类似;页面属性是指一些页面的特定性质,例如,一些页面是“只读”的,这就是一种页面属性,可以将这些“只读”页面划分在一类。
更进一步地,本发明另一实施例中,对于上述预设分类条件统计结果为写访问统计结果的这种情况,具体地,预设条件包括写访问次数在预设范围内,相应地,上述S101具体为,获取该候选页面在预定时间内的写访问次数,根据该写访问次数获取该候选页面所属的页面类别。具体地,上述获取候选页面在预定时间内的写访问次数,可以是根据与该候选页面对应的计数器,获取该候选页面在预定时间内的写访问次数,即为了统计页面的写访问次数,需要为每个页面分配一个写计数器,页面每次被写访问,该写计数器就进行一次加1,之后,后台线程启动页面比较过程的时候,会先访问页面的写计数器,根据写计数器的值对页面进行分类;其中,同一页面类别所包括的各页面的写访问次数在同一预设范围内。具体实现过程中,该预设范围可以使静态指定分类阈值,例如,在预设时间内,写访问次数0~64的页面划分为第1类,写访问次数64~128的页面划分为第2类,以此类推,直到写访问次数大于1024次的页面都划分到第16类。当然,也可以采用较为复杂的动态分类,例如使用现有的K-Means分类方法。
再进一步地,本发明另一实施例中,上述预设条件可以为同一页面类别所包括的各页面的脏值相同,具体地,各页面包括多个子块,各子块分别对应一字符串中的一个数据位,该数据位的值标识对应的子块是否被写访问,上述字符串的值为对应页面的脏值(Dirty Map,简称DM);相应地,在这种情况下,上述S101具体为,判断上述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获取上述获选页面的DM;进而,根据该DM,获取上述候选页面所属的页面类别。本实施例主要针对页面的写访问在页面内的分布并不是均匀的,可能会集中在页面的几个子块内,因此统计各子块被写访问的情况会使得分类更为精确。
以将页面划分为8个子块为例,每个子块对应一字符串中的一个数据位,初始化时,每个数据位都为0,预设时间内,如果其中子块被写访问,则该子块数据位置1,如在预设时间内,上述8各子块(0~7)中的1、2、7被写访问,则该页面对应的DM可如表1所示,
表1
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 |
即该页面对应DM为01100001;而现有技术的硬件无法支持获取DM。
在具体实现过程中,一种方式是,在每一预设时间开始时,将各子块对应的数据位清零,在预设时间结束时获取DM,并直接根据该DM对页面进行分类;另一种方式是,在将数据位清零之前,记录一预设时间的DM,并在一段时间后,例如n个预设时间之后,计算DM的加权累计脏值(Accumulative Dirty Map,简称ADM),具体可以为ADM(n)=f(ADM(n-1),DM(n)),即根据前n-1个预设时间的ADM和第n个预设时间的DM来获取n个预设时间的ADM,根据ADM来对页面进行分类,在一些情况下会更为精确。
另外,以其中一个子块为例,启动后台线程后,在第一个时间片内,该子块被写访问了5次,记第一个时间片的写访问和(checksum)为5,第一时间片结束时,该子块对应的数据位置1;相邻的第二个时间片开始时,先将该子块对应的数据位清零,但是checksum进行累加,在第二个时间片结束时,若该checksum依然为5,说明第二个时间片内该子块没有被写访问,该子块对应的数据位置0,若该checksum为7,与第一个时间片的checksum不同,说明第二个时间片内该子块被写访问了2次,该子块对应的数据位置1,也就是软件实现时可以通过计算比较相邻时间片的checksum是否相同,来对子块对应的数据位置1或置0,若相同则保持为0,不同,则置1。
需要说明的是,上述预设时间可以为上述候选页面的生命周期,该生命周期是指从页面被分配开始,直到页面使用完毕被释放的这一时间段,当然该预设时间也可以根据技术人员的经验来设定。
图2为本发明提供的页面共享处理方法另一实施例的流程示意图,在本发明实施例实现的过程中,采用的页面比较方法,一种方式可以是让候选页面在所有页面中搜索与该候选页面属于同一页面类别的页面,进而与这些同一页面类别的部分或所有页面进行比较;另一种方式可以与现有的内核支持的相同页面合并(Kernel Same page Merge,简称KSM)技术结合,为每个页面类别维护两棵红黑树,一棵稳定树,一棵非稳定树,其中,稳定树用于维护该页面类别中可共享的页面,非稳定树中维护该页面类别中不能共享的页面,具体地,以所有页面中的一个候选页面为例,且以根据写访问统计结果进行分类为例,这种方式的流程为:
S201、判断该候选页面在搜索间隔内是否被写访问,若是,表明该候选页面为非稳定页面,则执行S202;若否,则执行S203。
需要说明的是,该搜索间隔具体指候选页面从启动比较到比较结束的时间段。
S202、不对该候选页面进行任何比较,也不加入到任一上述红黑树中。
S203、查询该候选页面的写访问历史信息,获取该候选页面所属的页面类别。
S204、搜索上述页面类别对应的稳定树,判断该稳定树中是否存在与该候选页面内容相同的目标页面,若存在,则执行S205;若不存在,则执行S206。
具体地,在搜索过程中,可以只搜索该稳定树中的部分页面,例如,该稳定树为二叉树形式,两个分支上的页面内容设定为不同,这样当其中一个分支上的页面与候选页面内容相同,另外一个分支上的页面就没有必要与候选页面比较了。
S205、将该目标页面合并到该稳定树中。
S206、搜索上述页面类别对应的非稳定树,判断该非稳定树中是否存在与该候选页面内容相同的目标页面,若存在,则执行S207;若不存在,则执行S208。与S204类似,在搜索过程中,可以只搜索该非稳定树中的部分页面。
S207、将上述目标页面与候选页面一起合并到上述稳定树中,实现共享。
S208、将该候选页面插入上述非稳定树中。
本实施例中,先获取该候选页面所属的页面类别,例如,根据写访问统计结果对页面分类得到的页面类别,具体地可以根据页面的写访问次数来分类,或者更精确的,根据页面包括的子块的被写访问情况来获取候选页面所属的页面类别,然后将该候选页面与该页面类别中所包括的多个页面分别进行比较,来获取与其内容相同的目标页面,即候选页面只需要与它所属页面类别中的页面进行比较,而无需与所有页面分别进行比较,这样大大减少了无效比较的次数,提高了效率,也降低了页面比较的开销。
图3为本发明提供的页面共享处理装置一实施例的结构示意图,如图3所示,该装置包括:获取模块301、比较模块302,其中:
获取模块301,用于获取候选页面所属的页面类别;比较模块302,用于将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取模块301,具体用于获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
需要说明的是,所述预设分类条件统计结果还可以包括:读访问统计结果、页面属性统计结果。
进一步地,一种实施例中,所述预设条件包括写访问次数在预设范围内;相应地,所述获取模块301,具体用于获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。具体实现过程中,获取模块301,还具体用于根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
图4为本发明提供的页面共享处理装置另一实施例的结构示意图,如图4所示,在图3的基础上,获取模块301包括:判断单元401和获取单元402,其中:
判断单元401,用于判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;获取单元402,用于根据所述脏值,获取所述候选页面所属的页面类别。
其中,本发明实施例中,所述预定时间可以为所述候选页面的生命周期。
上述页面共享处理装置可以用以执行前述方法实施例,其实现原理类似,在此不再赘述。
本实施例中,先获取候选页面所属的页面类别,例如,根据写访问统计结果对页面分类得到的页面类别,具体地可以根据页面的写访问次数来分类,或者更精确的,根据页面包括的子块的被写访问情况来获取候选页面所属的页面类别,然后将该候选页面与该页面类别中所包括的多个页面分别进行比较,来获取与其内容相同的目标页面,即候选页面只需要与它所属页面类别中的页面进行比较,而无需与所有页面分别进行比较,这样大大减少了无效比较的次数,提高了效率,也降低了页面比较的开销。
本发明另一个实施例提供一种页面共享处理装置,包括处理器,所述处理器用于获取候选页面所属的页面类别;将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取模块,具体用于获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
需要说明的是,所述预设分类条件统计结果还可以包括:读访问统计结果、页面属性统计结果。
进一步地,所述预设条件包括写访问次数在预设范围内;相应地,所述处理器,具体用于获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。具体用于根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
所述预设条件为同一页面类别所包括的各页面的脏值相同;各页面包括多个子块,各子块分别对应一字符串中的一个数据位;所述数据位的值标识对应的子块是否被写访问,所述字符串的值为对应页面的脏值;相应地,所述处理器,用于判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;根据所述脏值,获取所述候选页面所属的页面类别。
需要说明的是,所述预定时间为所述候选页面的生命周期。
上述装置可用于执行前述方法实施例,其实现方式类似,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (14)
1.一种页面共享处理方法,其特征在于,包括:
获取候选页面所属的页面类别;
将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;
其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
2.根据权利要求1所述的方法,其特征在于,所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取候选页面所属的页面类别,包括:
获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
3.根据权利要求2所述的方法,其特征在于,所述预设条件包括写访问次数在预设范围内;相应地,所述获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别包括:
获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。
4.根据权利要求3所述的方法,其特征在于,所述获取所述候选页面在预定时间内的写访问次数包括:
根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
5.根据权利要求2所述的方法,其特征在于,所述预设条件为同一页面类别所包括的各页面的脏值相同;各页面包括多个子块,各子块分别对应一字符串中的一个数据位;所述数据位的值标识对应的子块是否被写访问,所述字符串的值为对应页面的脏值;相应地,获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别包括:
判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;
根据所述脏值,获取所述候选页面所属的页面类别。
6.根据权利要求1~5任一项所述的方法,其特征在于,所述预设分类条件统计结果还包括:读访问统计结果、页面属性统计结果。
7.根据权利要求1~7任一项所述的方法,其特征在于,所述预定时间为所述候选页面的生命周期。
8.一种页面共享处理装置,其特征在于,包括:
获取模块,获取候选页面所属的页面类别;
比较模块,用于将所述候选页面与所述页面类别所包括的多个页面进行比较,获取与所述候选页面具有相同内容的目标页面,并将所述候选页面和所述目标页面进行共享;
其中,所有页面根据各页面的预设分类条件统计结果进行分类,同一页面类别所包括的各页面的预设分类条件统计结果满足预设条件。
9.根据权利要求8所述的装置,其特征在于,所述预设分类条件统计结果包括写访问统计结果;相应地,所述获取模块,具体用于获取候选页面在预定时间内的写访问统计结果,根据所述写访问统计结果获取所述候选页面所属的页面类别。
10.根据权利要求9所述的装置,其特征在于,所述预设条件包括写访问次数在预设范围内;相应地,所述获取模块,具体用于获取所述候选页面在预定时间内的写访问次数,根据所述写访问次数获取所述候选页面所属的页面类别。
11.根据权利要求10所述的装置,其特征在于,所述获取模块,具体用于根据与所述候选页面对应的计数器,获取所述候选页面在预定时间内的写访问次数。
12.根据权利要求9所述的装置,其特征在于,所述预设条件为同一页面类别所包括的各页面的脏值相同;各页面包括多个子块,各子块分别对应一字符串中的一个数据位;所述数据位的值标识对应的子块是否被写访问,所述字符串的值为对应页面的脏值;相应地,所述获取模块,包括:
判断单元,用于判断所述候选页面所包括的各子块在预定时间内是否被写访问,若是,则将被写访问的子块所对应的数据位置1;否则,将没有被写访问的子块所对应的数据位置0,获得所述候选页面的脏值;
获取单元,用于根据所述脏值,获取所述候选页面所属的页面类别。
13.根据权利要求8~12任一项所述的装置,其特征在于,所述预设分类条件统计结果还包括:读访问统计结果、页面属性统计结果。
14.根据权利要求8~13任一项所述的装置,其特征在于,所述预定时间为所述候选页面的生命周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310081954.5A CN104050189B (zh) | 2013-03-14 | 2013-03-14 | 页面共享处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310081954.5A CN104050189B (zh) | 2013-03-14 | 2013-03-14 | 页面共享处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104050189A true CN104050189A (zh) | 2014-09-17 |
CN104050189B CN104050189B (zh) | 2019-05-28 |
Family
ID=51503040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310081954.5A Active CN104050189B (zh) | 2013-03-14 | 2013-03-14 | 页面共享处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104050189B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815057A (zh) * | 2015-11-30 | 2017-06-09 | 联发科技股份有限公司 | 依需合并具有相同内容的页面的方法和系统 |
CN107766231A (zh) * | 2016-08-22 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种自动化测试方法和装置 |
CN111562983A (zh) * | 2020-04-30 | 2020-08-21 | Oppo(重庆)智能科技有限公司 | 内存优化方法、装置、电子设备及存储介质 |
CN113176958A (zh) * | 2021-04-29 | 2021-07-27 | 深信服科技股份有限公司 | 一种内存共享方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003203089A (ja) * | 2002-01-07 | 2003-07-18 | Nippon Telegr & Teleph Corp <Ntt> | Webページ検索方法およびWebページ検索装置、Webページ検索プログラム並びにそのプログラムを記録した記録媒体 |
CN101127044A (zh) * | 2007-06-08 | 2008-02-20 | 北京大学 | 动态网页的分块方法 |
CN101158924A (zh) * | 2007-11-27 | 2008-04-09 | 北京大学 | 一种虚拟机管理器的动态内存映射方法 |
CN101296220A (zh) * | 2007-04-29 | 2008-10-29 | 阿里巴巴集团控股有限公司 | 一种过滤信息的方法及装置 |
CN102779074A (zh) * | 2012-06-18 | 2012-11-14 | 中国人民解放军国防科学技术大学 | 基于内存空洞机制的虚拟机内存资源分配方法 |
-
2013
- 2013-03-14 CN CN201310081954.5A patent/CN104050189B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003203089A (ja) * | 2002-01-07 | 2003-07-18 | Nippon Telegr & Teleph Corp <Ntt> | Webページ検索方法およびWebページ検索装置、Webページ検索プログラム並びにそのプログラムを記録した記録媒体 |
CN101296220A (zh) * | 2007-04-29 | 2008-10-29 | 阿里巴巴集团控股有限公司 | 一种过滤信息的方法及装置 |
CN101127044A (zh) * | 2007-06-08 | 2008-02-20 | 北京大学 | 动态网页的分块方法 |
CN101158924A (zh) * | 2007-11-27 | 2008-04-09 | 北京大学 | 一种虚拟机管理器的动态内存映射方法 |
CN102779074A (zh) * | 2012-06-18 | 2012-11-14 | 中国人民解放军国防科学技术大学 | 基于内存空洞机制的虚拟机内存资源分配方法 |
Non-Patent Citations (2)
Title |
---|
DIWAKER GUPTA 等: "Difference Engine:Harnessing Memory Redundancy in Virtual Machines", 《COMMUNICATIONS OF THE ACM》 * |
刘武 等: "用 VMware构建高效的网络安全实验床", 《计算机应用研究》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815057A (zh) * | 2015-11-30 | 2017-06-09 | 联发科技股份有限公司 | 依需合并具有相同内容的页面的方法和系统 |
CN107766231A (zh) * | 2016-08-22 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种自动化测试方法和装置 |
CN107766231B (zh) * | 2016-08-22 | 2021-03-16 | 阿里巴巴集团控股有限公司 | 一种自动化测试方法和装置 |
CN111562983A (zh) * | 2020-04-30 | 2020-08-21 | Oppo(重庆)智能科技有限公司 | 内存优化方法、装置、电子设备及存储介质 |
CN113176958A (zh) * | 2021-04-29 | 2021-07-27 | 深信服科技股份有限公司 | 一种内存共享方法、装置、设备及存储介质 |
CN113176958B (zh) * | 2021-04-29 | 2024-02-23 | 深信服科技股份有限公司 | 一种内存共享方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104050189B (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105653524B (zh) | 一种数据存储方法、装置和系统 | |
CN101777026B (zh) | 一种存储管理方法、硬盘及存储系统 | |
CN107968810B (zh) | 一种服务器集群的资源调度方法、装置和系统 | |
US20160092109A1 (en) | Performance of de-clustered disk array | |
CN105224237A (zh) | 一种数据存储方法及装置 | |
CN103795804A (zh) | 存储资源调度方法及存储计算系统 | |
KR102646619B1 (ko) | 컴포지트 메모리 장치를 포함하는 전자 장치에 파일 시스템을 제공하는 시스템 및 방법 | |
CN103577336A (zh) | 一种存储数据处理方法及装置 | |
CN105487823A (zh) | 一种数据迁移的方法及装置 | |
CN103019861A (zh) | 虚拟机分配方法及装置 | |
CN107533435A (zh) | 存储空间的分配方法及存储设备 | |
CN103324533A (zh) | 分布式数据处理方法、装置及系统 | |
CN104050189A (zh) | 页面共享处理方法及装置 | |
CN104199784A (zh) | 一种基于分级存储的数据迁移方法及装置 | |
CN104932933A (zh) | 一种获取自旋锁的方法及装置 | |
US20160357459A1 (en) | Virtual grouping of memory | |
CN103793332A (zh) | 基于内存的数据存储方法、装置、处理器和电子设备 | |
US20190129647A1 (en) | Method, device and computer program product for managing disk array | |
US8549223B1 (en) | Systems and methods for reclaiming storage space on striped volumes | |
CN111083189B (zh) | 用于在运行时处理数据倾斜的系统和方法 | |
CN112882663A (zh) | 一种随机写的方法、电子设备及存储介质 | |
CN103645860A (zh) | 存储空间的管理方法和存储管理装置 | |
CN104077241A (zh) | 缓存淘汰算法切换处理方法及装置 | |
CN103078845A (zh) | 访问控制列表的校验方法和共享存储系统 | |
CN102393838A (zh) | 数据处理方法及装置、pci-e总线系统、服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |