IVI15.1.1 系统稳定性优化篇(LMKD Ⅰ)Android低内存查杀守护进程(Android12)
Posted 高桐@BILL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IVI15.1.1 系统稳定性优化篇(LMKD Ⅰ)Android低内存查杀守护进程(Android12)相关的知识,希望对你有一定的参考价值。
写在前面
参考:AOSP/system/memory/lmkd/README.md
≥ android10
lmkd可用于监控运行中的Android系统的内存状态,并根据优先级杀掉相对来说最不重要的进程(the least essential process)以释放一定的内存,确保系统稳健运行。
再过去,Android使用内核级的lmk来监控内存压力,该内核级lmkd驱动是一种依赖硬编码值的严格机制。从内核4.12开始,LMK驱动程序改由用户空间的lmdk来执行系统内存监控和进程的查杀。
一、PSI 压力时速信息
PSI(Pressure Stall Information)压力失速信息。
Android10+以后的lmkd通过内核的PSI来监控内存压力。
PSI统计数据为即将发生的资源短缺提供了预警功能,因而实现更主动、更细致、更准确的响应。当然PSI统计数据不仅包含了Memory,它同时涵盖了Memory、CPU、IO三大资源的pressure指标,来帮助工程师们及时管控系统资源短缺的情况。
1.1 PSI使能
如果需要使能PIS,则需要配置ro.lmk.use_psi为true,默认为true。及lmk会以PSI作为默认机制(除此之外还有vmpressure机制)。因为PSI需要内核支持,因此需要在编译内核时配置CONFIG_PSI=y。
二,LMKD机制介绍(用户空间)
用户空间 lmkd
与内核中的功能相似,它默认使用压力失速信息 (PSI) 监视器来获取关于内存压力水平的通知,以及使用内存 cgroup 功能限制根据进程的重要性分配给
以上是关于IVI15.1.1 系统稳定性优化篇(LMKD Ⅰ)Android低内存查杀守护进程(Android12)的主要内容,如果未能解决你的问题,请参考以下文章
IVI15.1.7 系统稳定性优化篇(LMKD 七)AMS与LMKD
IVI15.1.4 系统稳定性优化篇(LMKD IV)LMKD初始化
IVI15.1.8 系统稳定性优化篇(LMKD 八)通过填充内存触发lmkd查杀
IVI15.1.6 系统稳定性优化篇(LMKD 六)Vmpressure监视器初始化及其工作原理