IVI15.1.7 系统稳定性优化篇(LMKD 七)AMS与LMKD

Posted 高桐@BILL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IVI15.1.7 系统稳定性优化篇(LMKD 七)AMS与LMKD相关的知识,希望对你有一定的参考价值。

当进程状态发生变化时,如Activity执行onStop()生命周期函数从前台进程变成后台进程,AMS(ActivityManagerService)会通过ProcessList.java与native曾当LMKD进行通信,当LMKD接收到内存压力事件时,则会根据adj和minfree的值来选择合适的进程进行查杀。

其流程图如下:

一,AMS初始化adj & minfree信息

AMS在ProcessList的构造函数中调用updateOomLevels()来初始化minfree和adj信息。

1.1 ProcessList()

android_master/frameworks/base/services/core/java/com/android/server/am/ProcessList.java
795  
796      ProcessList() 
797          MemInfoReader minfo = new MemInfoReader();
798          minfo.readMemInfo();
799          mTotalMemMb = minfo.getTotalSize()/(1024*1024);
800          updateOomLevels(0, 0, false);
801      

1.2 updateOomLevels()

943      private void updateOomLevels(int displayWidth, int displayH

以上是关于IVI15.1.7 系统稳定性优化篇(LMKD 七)AMS与LMKD的主要内容,如果未能解决你的问题,请参考以下文章