一种移动设备内存管理方法及装置制造方法及图纸

技术编号:15638696 阅读:243 留言:0更新日期:2017-06-15 18:52
本发明专利技术公开了一种移动设备内存管理方法与装置,其中方法包括以下步骤:查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序;根据所述待交换的应用程序执行内存交换处理,其中,所述执行内存交换处理在启动所述指定应用程序之前完成。本发明专利技术在进行内存交换时既考虑了按预定算法查找待交换的应用程序,又考虑到应用程序间的依赖性,从而消除了无效的内存交换,提高了用户使用设备的体验感。

【技术实现步骤摘要】
一种移动设备内存管理方法及装置本申请为申请人“中兴通讯股份有限公司”于申请日2011年5月23日提交的、申请号为"201110135149.7"、专利技术名称为“一种移动设备内存管理方法及装置”的专利技术专利申请的分案申请。
本专利技术涉及内存管理,尤其涉及一种移动设备内存管理系统及方法。
技术介绍
随着3G和智能机时代的来临,手机等移动设备上的应用程序越来越多,这类手机等移动设备采用多任务的操作系统,可以同时运行着多个任务。为了提高多任务的用户体验,手机等移动设备配备了大容量内存。但是,内存容量的增加受到成本、功耗、体积等的限制。因此,如何在多任务情况下降低内存使用量成为亟待解决的问题。内存交换是在PC机和服务器上广泛使用的一种用来降低内存使用量的方法。它的基本原理是:当系统内存不足时,把内存中的一些内容交换到外存中,从而腾出内存空间;当系统运行到需要被交换到外存的内容时,就把交换到外存中的内容再次交换到内存中;在这个过程中如果发生内存不足,就会涉及到另一次交换过程。这样,系统的有效内存空间大小就是实际内存大小加上外存上可以用来存放交换内容的空间之和。通过内外存交换,可以实现用较少的内存达到更大内存的效果。目前,PC机和服务器上的内存交换方法基本上是作为操作系统的一个基本功能(即虚拟存储器管理)模块在操作系统的内核中实现,其使用LRU(LeaseRecentlyUse,最近最少使用)算法,将最近最长时间不使用的优先交换出去,并以内存页为最小单位进行交换。内存页是操作系统管理内存的基本单位,32位的Linux操作系统的一个内存页大小一般为4KB。然而,PC机和服务器上使用的内存交换方式存在以下问题:1)当把最近最长时间不使用的内存页交换出去时,有可能发生当前要运行的应用程序就要使用刚被交换出去的内存页,于是这部分被交换出去的内存页中的内容又马上要交换到内存中来;2)为了提高内存使用率,操作系统每次会选择尽可能少交换内存页,于是当前要运行的应用程序在正常运行过程中可能又会发生内存不足的情况,于是系统又会进行内存交换,以便让应用程序能够正常运行下去。这两个问题导致无效的内存交换和内存交换过于频繁,而且,在进行内存交换时,系统不能执行任何其它的操作。因此,过多和频繁的内存交换就会使应用程序运行变慢,运行不流畅,运行过程中时不时出现短促的停顿,这会极大降低用户体验。PC机和服务器由于CPU性能强劲,这种运行变慢和运行不流畅对用户体验的影响相对轻微,而手机等移动设备的CPU性能相对较弱,运行变慢和运行不流畅对用户体验的影响就会很明显,从而导致用户体验变得很差。正是由于这个原因,在手机等移动设备上都没有使用内存交换来降低内存使用量。
技术实现思路
本专利技术要解决的主要技术问题是,提供一种移动设备中内存管理的方法及装置,在通过内存交换降低内存使用量的同时,尽量做到不影响用户体验。根据本专利技术的一种实施方式,提供一种移动设备内存管理方法,包括:查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序;根据所述待交换的应用程序执行内存交换处理,其中,所述执行内存交换处理在启动所述指定应用程序之前完成。进一步地,所述查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序这一步骤包括:从正运行的应用程序中查找符合预定算法的应用程序;从查找到的符合预定算法的应用程序中查找与指定应用程序无依赖关系的应用程序,将其作为待交换的应用程序。一种实施例中,根据所述待交换的应用程序执行内存交换处理这一步骤包括:选中一个所述待交换的应用程序,将该选中的应用程序所对应的进程所属的内存页交换到外存中;判断该应用程序所占的内存量与系统当前的可用内存量之和是否大于等于第一预设阈值;如果不是,则继续执行选中一个所述待交换的应用程序这一步骤。另一种实施例中,根据待交换的应用程序执行内存交换处理这一步骤包括:选中一个所述待交换的应用程序,标记该选中的应用程序;判断该标记的应用程序所占的内存量与系统当前的可用内存量之和是否大于等于第一预设阈值;如果不是,则继续执行选中一个所述待交换的应用程序这一步骤;如果是,则将所有标记的应用程序各自对应的进程所属的内存页交换到外存中。又一种实施例中,根据待交换的应用程序执行内存交换处理这一步骤包括:将所述待交换的应用程序所对应的进程所属的内存页交换到外存中。优选地,所述查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序这一步骤之前还包括:判断系统当前的可用内存量是否大于等于第二预设阈值;若小于所述第二预设阈值,则执行所述查找与指定应用程序无依赖关系且符合预定算法的应用程序作为待交换的应用程序步骤;否则不作处理。优选地,所述符合预定算法的应用程序包括最近最少使用CPU的应用程序。优选地,根据待交换的应用程序执行内存交换管理处理这一步骤之后还包括:执行正常的应用程序启动流程启动所述指定应用程序;当所述指定应用程序为系统当前正待启动的新的应用程序时,所述根据待交换的应用程序执行内存交换管理处理这一步骤之后还包括:执行正常的应用程序启动流程启动所述新的应用程序。根据本专利技术的另一种实施方式,提供一种移动设备内存管理装置,包括:应用管理与控制模块,用于查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序;内存交换模块,用于根据所述应用管理与控制模块的指示,将所述待交换的应用程序所对应的进程所属的内存页交换到外存中。进一步地,所述符合预定算法的应用程序包括最近最少使用CPU的应用程序。本专利技术的有益效果在于:在进行内存交换时既考虑了按预定算法查找待交换的应用程序,又考虑到应用程序间的依赖性,从而消除了无效的内存交换,提高了用户使用设备的体验感。一种实施例中还考虑了一次交换出去的内存页数量与系统当前最大内存使用量的关系,从而解决了内存交换过于频繁问题,降低内存交换频率;又一种实施例中考虑在启动程序前完成内存交换,保证在应用程序运行过程中没有内存交换,从而消除内存交换对应用程序运行过程的影响。附图说明图1是本专利技术实施例提供的移动设备内存管理装置的结构示意图;图2是本专利技术实施例一移动设备内存管理方法的流程示意图;图3是本专利技术实施例二移动设备内存管理方法的流程示意图;图4是本专利技术实施例三移动设备内存管理方法的流程示意图;图5是本专利技术实施例四移动设备内存管理方法的流程示意图;图6是本专利技术实施例五移动设备内存管理方法的流程示意图;图7是本专利技术实施例六移动设备内存管理方法的流程示意图;图8是本专利技术一种实施例应用于Android手机中的内存管理装置的结构示意图;图9是与图8相对应的Android手机中内存管理方法的流程示意图。具体实施方式下面通过具体实施方式结合附图对本专利技术作进一步详细说明。本专利技术实施例的设计思想是:1)选择要交换出去的内存页时,既考虑使用预定算法来选择应用程序,也考虑当前要运行的应用程序是否可能使用,只有同时满足这两个条件的内存页才被选择交换出去;2)一次交换出去的内存页数量要满足当前要运行的应用程序可能的最大内存使用量;3)内存交换在启动当前要运行的应用程序之前完成。其中,思想点1)消除了无效的内存交换,思想点2)降低了内存交换频本文档来自技高网
...
一种移动设备内存管理方法及装置

【技术保护点】
一种移动设备内存管理方法,其特征在于,包括以下步骤:查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序;根据所述待交换的应用程序执行内存交换处理,其中,所述执行内存交换处理在启动所述指定应用程序之前完成。

【技术特征摘要】
1.一种移动设备内存管理方法,其特征在于,包括以下步骤:查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序;根据所述待交换的应用程序执行内存交换处理,其中,所述执行内存交换处理在启动所述指定应用程序之前完成。2.如权利要求1所述的方法,其特征在于,所述查找与指定应用程序无依赖关系且符合预定算法的至少一个应用程序作为待交换的应用程序这一步骤包括:从正运行的应用程序中查找符合预定算法的应用程序;从查找到的符合预定算法的应用程序中查找与指定应用程序无依赖关系的应用程序,将其作为待交换的应用程序。3.如权利要求1或2所述的方法,其特征在于,根据所述待交换的应用程序执行内存交换处理这一步骤包括:选中一个所述待交换的应用程序,将该选中的应用程序所对应的进程所属的内存页交换到外存中;判断该应用程序所占的内存量与系统当前的可用内存量之和是否大于等于第一预设阈值;如果不是,则继续执行选中一个所述待交换的应用程序这一步骤。4.如权利要求1或2所述的方法,其特征在于,根据待交换的应用程序执行内存交换处理这一步骤包括:选中一个所述待交换的应用程序,标记该选中的应用程序;判断该标记的应用程序所占的内存量与系统当前的可用内存量之和是否大于等于第一预设阈值;如果不是,则继续执行选中一个所述待交换的应用程序这一步骤;如果是,则将所有标记的应用程序各自对应的进程所属的内存页交换到外存中。5.如权利要求1或2所述的方法,其特征在于,根据待交换的应用程序执行内...

【专利技术属性】
技术研发人员:古幼鹏徐立锋王巍胡炜
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

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

1