天语t619plus吧 关注:12贴子:621

安卓内存机制

只看楼主收藏回复

给大家普及一下或者修正一下原先关于内存的错误观念,以安卓内存为主题的帖子^v^


来自Android客户端1楼2015-07-22 22:29回复
    先讲讲安卓内存中的程序等级


    来自Android客户端4楼2015-07-29 18:07
    回复
      1.前台应用
      界面在前台的程序。
      等级最高的进程等级,不易被停止。


      来自Android客户端5楼2015-07-29 18:12
      回复
        2.可见进程
        界面没有完全覆盖屏幕的前台进程。
        比如对话框,输入法,小浮窗等。
        等级低于前台进程。


        来自Android客户端7楼2015-07-29 18:17
        回复
          3.后台服务
          不可见的进程,等级低于可见进程。
          比如后台播放的音乐,后台推送等等。


          来自Android客户端8楼2015-07-29 18:19
          回复
            4.后台进程
            界面不可见的进程,等级低于后台服务。
            是home键退出界面的程序,实际仍在运行。


            来自Android客户端9楼2015-07-29 18:24
            回复
              5.内容供应节点
              为其他程序供应内容的程序。
              比如媒体存储,日历存储等。


              来自Android客户端10楼2015-07-29 18:26
              回复
                6.空进程
                程序界面已被销毁,保留一个空壳以便下次快速加载。等级最低。


                来自Android客户端11楼2015-07-29 18:31
                回复
                  7.home进程
                  桌面进程,一般不会被停止


                  来自Android客户端12楼2015-07-29 18:35
                  回复
                    8.核心服务
                    等级高于前台进程。
                    比如拨号器(com.android.phone)状态栏(com.android.systemui)等


                    来自Android客户端13楼2015-07-29 18:38
                    回复
                      9.Linux进程
                      底层进程,后台等级最高。
                      例如oom kill、init、sh、logcat、busybox等进程,通常无法停止,也不建议停止。


                      来自Android客户端14楼2015-07-29 18:41
                      回复
                        接下来介绍oom kill


                        来自Android客户端15楼2015-07-29 18:53
                        回复
                          oom kill是Linux提供的一种内存机制,在内存不足时自动杀进程以保持系统正常运行。


                          来自Android客户端16楼2015-07-29 18:55
                          回复
                            只有前面6类进程参与oom killer(home进程也参与oom killer)


                            来自Android客户端17楼2015-07-29 18:59
                            回复
                              oom killer在内存不足时会从空进程开始,到前台进程为止。oom killer依靠内存阀值判断内存少于多少时杀哪类进程。


                              来自Android客户端18楼2015-07-29 19:04
                              回复