低端androi机内存管理优化.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
低端androi机内存管理优化

大家好,今天我主要来和大家交流下低端android手机内存优化的问题。 一、问题的引出 前天,我在论坛发了一个帖子,想请教大家关于联想A68e内存优化的问题,但是回复者寥寥无几,课件也很少有机油对这方面有较深入的学习了解。我今天中午,查了有关资料,也用了自己的手机进行了测试,觉得可能对A68e(其实是广大低端Android手机)用户有点帮助,所以特地来分享以下。(说明:本人用的是Sumsumg I9103,我媳妇用的是电信套餐的联想A68e,这几天我没拿到她的手机来测试,所以只能自己的手机进行测试,但是我觉得还是具有一定的参考价值的)。 二、ROM和RAM 首先,我先解释一下ROM和RAM的区别。 ROM是Read Only Memory,即只读存储器;RAM是Access Random Memory,即随即读写存储器。 ROM是存储程序和数据的,类别电脑的硬盘,可以存放安装的程序、文件、数据等。而论坛中有开AppEXT2的方法(我没试过),那个只是节省出更多的ROM空间,这样可以使程序运行得更为流畅,但是不能解决“同时运行程序的数量最大值太小”的问题。以A68e为例,如果开一个QQ、音乐播放器,再开个UC浏览器估计机子就崩溃而导致程序退出。 RAM才是程序运行时所占用的物理空间。RAM的价格比ROM贵很多,所以RAM的大小一半程度上决定了机子的价位(另一半就是CPU)。我的Sumsung是1G RAM,同时开QQ、QQ游戏、QQ音乐、浏览器、微信等七、八个程序也毫无压力。所以RAM太小是影响A68e(包括很多Android手机)用户体验的原因。如果你是个游戏玩家、手机达人,那么这类机子一定不适合你。如果你希望能像有高端机那样的用户体验,我建议你还是多话点银子购买配置高的Android手机。 关于官方宣传256的RAM实际上只有170,那是有一部分被Android系统占用。我的手机1GRAM,实际上也只有724M。 三、Android系统内存管理机制及进程调度机制 下面开始具体的分析了。 首先Android系统是基于Linux?内核开发的开源操作系统,linux系统的内存管理有其独特的动态存储管理机制。Android采取了一种有别于Linux的进程管理策略,Linux系统在进程活动停止后就结束该进程,而Android把这些进程都保留在内存中,直到系统需要更多内存为止。这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速度。 Android系统这样的设计不仅非常适合移动终端(手机、平板)的需要,而且减少了系统崩溃的可能,确保了系统的稳定性。老想着清理内存的同学完全是因为被塞班或者Windows毒害太深,事实上,经常用Taskiller之类的软件关闭后台所有进程,很容易造成系统的不稳定。很多时候出现问题了,只要重启就能解决的原因也在于此。 广大机油一定会发现,关闭了QQ、微信等程序后,其实并没有完全关闭这些程序。这些程序在后台占用了一定的内存,但是并没有运行时(或者说运行在前台时)占用得多。而且这些程序总会自己启动,清理过内存后又会再次出现。 Android系统有六类进程:前台进程、后台服务、可见进程、隐藏程序、空进程、内容提供者。那Android系统什么时候结束进程?结束哪个进程呢?如果你懂java,就会更容易理解Android系统的内存管理机制。与java的垃圾回收机制类似,系统有一个规则来回收内存。内存调度依据各类进程的“阈值”设置,只有低于这个值,系统才会按一个列表来关闭用户不需要的东西。而这个列表中进程排列的先后,是依据LRU(Least Recently Used?最近最少使用)进程调度方法。即当为各类进程分配的RAM小于各类进程设置的阈值时,最近最少使用的进程,将会最先被关闭。 四、Android系统的六大类进程 (这里我是参考了其他的地方资料,根据自己的理解改写,可能有误,请指正。) 1.前台进程:目前正在屏幕上显示的应用进程和一些系统进程。举例来说,当你运行一个程序,如浏览器,当浏览器界面在屏幕显示时,浏览器属于前台进程,但一旦你按home键回到主界面,浏览器在后台运行,并且依然可见。我们最不希望终止的进程就是前台进程。 2.后台服务:目前正在运行的一些服务(绝大部分的系统进程)。举例来说:拨号、联系人等,这部分服务虽然属于后台服务,但很一些系统功能依然息息相关,我们时常需要用到它们,是不可能被进程管理终止的。(后台服务不属于后台程序)。 3可见进程(后台进程):后台进程是一些不再前台,但用户依然需要用到的进程,举例来说,后台运行的QQ(需要随时接受消息)、音乐播放器等。我个人认为可见进程就是后台进程!这部分进程虽然不在前台,但与我们的使用也密切相关,我们也

文档评论(0)

ikangdwe + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档