android low memory killer

概念不多说,记录一些 命令


查看低内存管理的adj值 及对应的内存限值

cat  /sys/module/lowmemorykiller/parameters/adj

0,1,2,4,9,15     越小越难被杀死,前台程序是0,init进程是-16 在init.rc里面有这样一句话 write /proc/1/oom_adj -16  

cat /sys/module/lowmemorykiller/parameters/minfree

4981,6494,8007,10055,11568,14059                  这个值是执行kill动作的限值,如14059是54M。



查看应用的adj值 如ps查看如下

system    8422  970   494368 17060 ffffffff 4017bee4 S cn.ipanel.tvapps.hunan.skcamodule

那么

cat /proc/8422/oom_adj              5 


如果需要提高该 应用的优先级,办法可以如下:

1 在代码里面调用  startForeground/stopForeground  添加为前台程序/去掉前台程序。

2 配置AndroidManifest.xml 设置android:persistent="true"       (应用要放在/system/app)   可以查看oom_adj 变成-12了。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="cn.ipanel.tvapps.hunan.skcdcamodule"
    android:versionCode="1"
    android:versionName="1.0.1"

    android:persistent="true"
    android:sharedUserId="android.uid.system">

你可能感兴趣的:(android low memory killer)