内存类 - 内存水线的调整
lowmemorykiller水线:
属性中找到 :
[sys.lmk.minfree_levels]: [18432:0,23040:100,27648:200,32256:250,55296:900,80640:950]
18432:0 -> 18432(page)*4/1024 = 72M
23040:100 -> 23040*4/1024 = 90M
27648:200 -> 108M
32256:250 -> 126M
55296:900 -> 216M
80640:950 -> 315M
/sys/module/lowmemorykiller/parameters/minfree:里面是以","分割的一组数,每个数字代表一个内存级别。
/sys/module/lowmemorykiller/parameters/adj:对应上面的一组数,每个数组代表一个进程优先级级别
ro.lmk.use_psi |
使用PSI 监视器,而不是vmpressure |
true |
ro.lmk.use_minfree_levels |
使用可用内存和文件缓存阈值来决定kill 策略,这是LMK驱动程序时的旧kill 策略 |
false |
ro.config.low_ram |
低内存设备还是性能设备 |
false(性能设备) |
sys.lmk.minfree_levels |
6档剩余内存和需要被kill的adj对应关系 |
lmkd设置 |
kswapd水线:
代码在 kernel/msm-5.4/mm/page_alloc.c