内存页交换方法、装置、终端及存储介质制造方法及图纸

技术编号:20484527 阅读:19 留言:0更新日期:2019-03-02 18:50
本申请公开了一种内存页交换方法、装置、终端及存储介质,属于内存管理技术领域。所述方法包括:在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息;根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,所述第二工作状态的物理性能高于所述第一工作状态的物理性能;通过处于所述第二工作状态的所述硬件组件对内存页进行所述页交换。本申请通过提升与页交换有关的硬件组件的工作状态,使得内存页在物理内存和虚拟内存之间的交换效率得到提高,进而优化了系统交互性能。

【技术实现步骤摘要】
内存页交换方法、装置、终端及存储介质
本申请涉及内存管理
,特别涉及一种内存页交换方法、装置、终端及存储介质。
技术介绍
在Linux内核内存管理中,存在有物理内存和虚拟内存。物理内存和虚拟内存中存储有内存页,内存页用于存储应用对应的代码和数据。物理内存用于存储支持应用运行时使用频繁的内存页;虚拟内存又称SWAP分区,用于存储不常用的应用的内存页,和/或,正在运行的应用但使用不频繁的内存页。Linux内核多应用于android系统中,在android系统中,当想要运行一个应用时,中央处理器(CentralProcessingUnit,CPU)提取对应的内存页,从而实现该应用的运行。当android系统运行应用1时,物理内存中没有存储或存储部分该应用1对应的内存页,且物理内存剩余可用内存页达到物理内存规定的水位,CPU根据物理内存的预设条件,确定本次交换的内存页,将该本次交换的内存页从物理内存换入虚拟内存中,从而CPU能够运行该应用1。当android系统运行应用2时,该应用2对应的内存页有全部或部分存储于虚拟内存中,CPU将该应用2对应的内存页从虚拟内存换出物理内存中,从而CPU能够运行该应用2。
技术实现思路
本申请实施例提供了一种内存页交换方法、装置、终端及存储介质,可以用于解决相关技术中内存页在物理内存和虚拟内存之间进行交换时,产生的交换时延过大,android系统的交互性差,导致卡顿现象的问题。所述技术方案如下:根据本公开实施例的一方面,提供了一种内存页交换方法,所述方法包括:在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息;根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,所述第二工作状态的物理性能高于所述第一工作状态的物理性能;通过处于所述第二工作状态的所述硬件组件对内存页进行所述页交换。根据本公开实施例的另一方面,提供了一种内存页交换装置,所述装置包括:开始模块,用于在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息;提升模块,用于根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,所述第二工作状态的物理性能高于所述第一工作状态的物理性能;交换模块,用于通过处于所述第二工作状态的所述硬件组件对内存页进行所述页交换。根据本公开实施例的另一方面,提供了一种终端,所述终端包括处理器,所述处理器包括存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的内存页交换方法。根据本公开实施例的另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上所述的内存页交换方法。本申请实施例提供的技术方案带来的有益效果至少包括:通过处理器在物理内存和虚拟内存开始进行页交换时,先生成开始通知消息,再根据该开始通知消息,将与页交换有关的硬件组件从第一工作状态提升为第二工作状态,由于第二工作状态的物理性能高于第一工作状态的物理性能,采用处于第二工作状态的硬件组件进行页交换,使得内存页在物理内存和虚拟内存之间的交换效率得到提高,避免了相关技术中内存页的交换时延过大而导致的卡顿问题,进而优化了系统交互性能。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请一个示例性实施例提供的实现内存页交换过程的实施环境的示意图;图2是本申请一个示例性实施例提供的内存页交换的方法流程图;图3是本申请另一个示例性实施例提供的内存页交换的方法流程图;图4是本申请一个示例性实施例提供的内存页交换的装置示意图;图5是本申请另一个示例性实施例提供的内存页交换的装置示意图;图6是本申请另一个示例性实施例提供的开始模块的装置示意图;图7是本申请另一个示例性实施例提供的提升模块的装置示意图;图8是本申请一个示例性实施例提供的终端的框图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。首先,对本申请实施例中涉及的名词进行介绍:物理内存:是通过易失性存储器而获得的内存空间。当运行一个应用时,该应用对应的代码和数据存储于内存页中,物理内存用于存储该内存页。在应用运行时,CPU从物理内存中读取对应的内存页,实现代码和数据的运行,从而实现该应用的运行。虚拟内存:是系统内存管理的一种技术,通过在非易失性存储器上划出一部分,并通过代码建立的一个内存空间。虚拟内存相对于物理内存,是物理内存的一个备用内存,当运行一个应用,物理内存中没有存储或存储部分该应用对应的内存页,且物理内存剩余可用内存页达到物理内存规定的水位,由CPU根据预设条件确定需要放入虚拟内存中的内存页,即本次交换的内存页,CPU将本次交换的内存页从物理内存换入虚拟内存中,从而为新应用腾出内存空间,实现该应用的运行。其中,物理内存规定的水位是指物理内存设定剩余的可用内存页与物理内存总内存页之间的比率,如物理内存设定规定水位为40%,但物理内存剩余可用内存页的比率达到40%时,需要将物理内存中的一部分内存页放入虚拟内存中。交换:是指当本次交换的内存页位于物理内存中,CPU将本次交换的内存页从物理内存换入到虚拟内存中;当本次交换的内存页位于虚拟内存中,CPU将确定的本次交换的内存页从虚拟内存换出到物理内存中。换入:是指CPU将内存页从物理内存换入到虚拟内存中。换出:是指CPU将内存页从虚拟内存换出到物理内存中。在Linux内核内存管理中,存在有物理内存和虚拟内存。物理内存位于易失性存储器上,虚拟内存又称SWAP分区,位于非易失性存储器上。Linux内核多应用于android系统中,在android系统中,物理内存用于存储运行一个应用的内存页,当想要运行该应用时,CPU从物理内存中提取对应的内存页,从而实现该应用的运行。当android系统中运行一个应用时,物理内存中没有存储或存储部分该应用对应的内存页,且物理内存剩余可用内存页达到物理内存规定的水位,CPU根据物理内存的预设条件,确定本次交换的内存页,将该本次交换的内存页从物理内存换入虚拟内存中,从而腾出空间以供新应用能够运行。该物理内存的预设条件是本次交换的内存页的使用频率是低于预设时间段内的预设使用频率的内存页,(如5天内使用次数不超过5次);或,物理内存中存储的可用内存页数量比大于阈值(如设定阈值为40%)。同理的,当中运行一个应用时,该应用对应的内存页的全部或部分被换入到虚拟内存中,android系统在运行该应用的过程中,需要使用到存储于虚拟内存的内存页时,CPU确定了本次交换的内存页,将本次交换的内存页从虚拟内存换出物理内存中,从而实现运行该应用被存储于虚拟内存中的内存页中的代码和数据。然而,在CPU确定本次交换的内存页后,无论是将本次交换的内存页从物理内存换入虚拟内存中,还是从虚拟内存换出物理内存中,都会在交换时产生交换时延,该交换时延的大小反映了android系统交互性能的优劣。若该交换时延过大本文档来自技高网...

【技术保护点】
1.一种内存页交换方法,其特征在于,所述方法包括:在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息;根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,所述第二工作状态的物理性能高于所述第一工作状态的物理性能;通过处于所述第二工作状态的所述硬件组件对内存页进行所述页交换。

【技术特征摘要】
1.一种内存页交换方法,其特征在于,所述方法包括:在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息;根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,所述第二工作状态的物理性能高于所述第一工作状态的物理性能;通过处于所述第二工作状态的所述硬件组件对内存页进行所述页交换。2.根据权利要求1所述的方法,其特征在于,所述根据所述开始通知消息,将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,包括:从所述开始通知消息中获取目标提升等级,所述目标提升等级是至少两个提升等级中的一个;根据所述目标提升等级,确定与所述页交换有关的硬件组件在所述第二工作状态下的工作参数;根据所述工作参数将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态。3.根据权利要求2所述的方法,其特征在于,所述与所述页交换有关的硬件组件包括:处理器;所述根据所述工作参数将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,包括:将所述处理器的工作频率从第一工作频率提升为与所述工作参数对应的第二工作频率。4.根据权利要求2所述的方法,其特征在于,所述与所述页交换有关的硬件组件包括:处理器、所述物理内存对应的第一存储器、所述虚拟内存对应的第二存储器;所述根据所述工作参数将与所述页交换有关的硬件组件从第一工作状态提升为第二工作状态,包括:将所述处理器的工作频率从第一工作频率提升为与所述工作参数对应的第二工作频率;将所述第一存储器的工作频率从第三工作频率提升为与所述工作参数对应的第四工作频率;将所述第二存储器的工作频率从第五工作频率提升为与所述工作参数对应的第六工作频率。5.根据权利要求2至4任一所述的方法,其特征在于,所述在所述物理内存和所述虚拟内存开始进行页交换时,生成开始通知消息,包括:在所述物理内存和所述虚拟内存开始进行页交换时,获取本次交换的所述内存页的数据量;根据本次交换的...

【专利技术属性】
技术研发人员:陈岩程杰
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1