Android手机内存进程优化设置技巧.doc

Android手机内存进程优化设置技巧.doc

ID:58819400

大小:19.00 KB

页数:5页

时间:2020-10-25

Android手机内存进程优化设置技巧.doc_第1页
Android手机内存进程优化设置技巧.doc_第2页
Android手机内存进程优化设置技巧.doc_第3页
Android手机内存进程优化设置技巧.doc_第4页
Android手机内存进程优化设置技巧.doc_第5页
资源描述:

《Android手机内存进程优化设置技巧.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Android采取了一种有别于Linux的进程管理策略,有别于Linux的在进程活动停止后就结束该进程,Android把这些进程都保留在内存中,直到系统需要更多内存为止。这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速度。那Android什么时候结束进程?结束哪个进程呢?之前普遍的认识是Android是依据一个名为LRU(lastrecentlyused最近使用过的程序)列表,将程序进行排序,并结束最早的进程。XDA的楼主又进一步对这个管理机制进行研究,有了如下发现:系统会对进程的重要性进行评估,并将重要性以“oom_adj”这

2、个数值表示出来,赋予各个进程;(系统会根据“oom_adj”来判断需要结束哪些进程,一般来说,“oom_adj”的值越大,该进程被系统选中终止的可能就越高)前台程序的“oom_adj”值为0,这意味着它不会被系统终止,一旦它不可访问后,会获得个更高的“oom_adj”,作者推测“oom_adj”的值是根据软件在LRU列表中的位置所决定的;Android不同于Linux,有一套自己独特的进程管理模块,这个模块有更强的可定制性,可根据“oom_adj”值的范围来决定进程管理策略,比如可以设定“当内存小于X时,结束“oom_adj”大于Y的进程”。这给了进程管理脚本的编写以更多的选择。Andr

3、oid将进程分为六大类:前台进程(foreground):目前正在屏幕上显示的进程和一些系统进程。举例来说,DialerStorage,GoogleSearch等系统进程就是前台进程;再举例来说,当你运行一个程序,如浏览器,当浏览器界面在前台显示时,浏览器属于前台进程(foreground),但一旦你按home回到主界面,浏览器就变成了后台程序(background)。我们最不希望终止的进程就是前台进程。可见进程(visible):可见进程是一些不再前台,但用户依然可见的进程,举个例来说:widget、输入法等,都属于visible。这部分进程虽然不在前台,但与我们的使用也密切相关,我们

4、也不希望它们被终止(你肯定不希望时钟、天气,新闻等widget被终止,那它们将无法同步,你也不希望输入法被终止,否则你每次输入时都需要重新启动输入法)次要服务(secondaryserver):目前正在运行的一些服务(主要服务,如拨号等,是不可能被进程管理终止的,故这里只谈次要服务),举例来说:谷歌企业套件,Gmail内部存储,联系人内部存储等。这部分服务虽然属于次要服务,但很一些系统功能依然息息相关,我们时常需要用到它们,所以也太希望他们被终止后台进程(hidden):虽然作者用了hidden这个词,但实际即是后台进程(background),就是我们通常意义上理解的启动后被切换到后台

5、的进程,如浏览器,阅读器等。当程序显示在屏幕上时,他所运行的进程即为前台进程(foreground),一旦我们按home返回主界面(注意是按home,不是按back),程序就驻留在后台,成为后台进程(background)。后台进程的管理策略有多种:有较为积极的方式,一旦程序到达后台立即终止,这种方式会提高程序的运行速度,但无法加速程序的再次启动;也有较消极的方式,尽可能多的保留后台程序,虽然可能会影响到单个程序的运行速度,但在再次启动已启动的程序时,速度会有所提升。这里就需要用户根据自己的使用习惯找到一个平衡点内容供应节点(contentprovider):没有程序实体,进提供内容供别

6、的程序去用的,比如日历供应节点,邮件供应节点等。在终止进程时,这类程序应该有较高的优先权空进程(empty):没有任何东西在内运行的进程,有些程序,比如BTE,在程序退出后,依然会在进程中驻留一个空进程,这个进程里没有任何数据在运行,作用往往是提高该程序下次的启动速度或者记录程序的一些历史信息。这部分进程无疑是应该最先终止的。实践说完理论,说些实践的东西,怎样管理这六类进程,如何来设置进程管理模块是这部分说的内容。首先是软件,推荐使用MinFreeManager,市场上就有下载,用于设置这六类进程的管理策略。软件运行后有六个输入框,在输入框中只能输入数字,这些数字代表了这类进程的处理策略

7、,比如ForegroundApp下的输入框显示6,就表示,当可用内存低于6MB时,终止ForegroundApp。下面的类似,如EmptyApp下的输入框显示24,则表示,当内存低于24MB时,终止EmptyApp。从软件数值的设置不难看出结束进程的有限顺序:Empty>ContentProvider>Hidden>SecondaryServer>Visible>Foreground。但默认设置确存在一些问题:各类进程的管理策略的阀

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。