IVI15.1.6 系统稳定性优化篇(LMKD 六)Vmpressure监视器初始化及其工作原理

Posted 高桐@BILL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IVI15.1.6 系统稳定性优化篇(LMKD 六)Vmpressure监视器初始化及其工作原理相关的知识,希望对你有一定的参考价值。

一,Vmpressure监视器工作原理概览

二,Vmpressure

由于 vmpressure 信号会存在大量误报,因此 lmkd 必须执行过滤以确定是否真的存在内存压力,会导致不必要的 lmkd 唤醒并使用额外更多的的系统资源。使用 PSI 监视器可以实现更精确的内存压力检测,并最大限度地减少过滤开销。PSI统计数据为即将发生的资源短缺提供了预警功能,因而实现更主动、更细致、更准确的响应。因此,Google在android10的版本为引入lmkd通过内核的PSI来监控内存压力。但当前的android为了对旧版本的支持,依然保留了vmpressure策略。

我们知道vmpressure的核心就是memcg,memcg是用户态访问内核cgroup的memory子系统的接口。也就是监听全局memcg的内存(非某个cgroup控制组)来了解系统当前的压力情况。

在memcg的memory pressure中,用户态可以使用压力等级的通知来监测内存分配消耗的情况;基于此内存压力状态,用户态可以实现不同的策略来管理它们内存资源的使用。我常常说,即便基于拖拉机的硬件能力,非业务出身的产品也希望自己的产品能够飞出银河系;那么我们则更需要合理的管理硬件资源,让有限的硬件资源更好的服务于业务。

kernel在进行内存回收的时候会通过scanned/reclaimed比值计算当前的内存压力,

40  /*
41   * These thresholds are

以上是关于IVI15.1.6 系统稳定性优化篇(LMKD 六)Vmpressure监视器初始化及其工作原理的主要内容,如果未能解决你的问题,请参考以下文章

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

IVI15.1.4 系统稳定性优化篇(LMKD IV)LMKD初始化

IVI15.1.8 系统稳定性优化篇(LMKD 八)通过填充内存触发lmkd查杀

IVI15.1.1 系统稳定性优化篇(LMKD Ⅰ)Android低内存查杀守护进程(Android12)

IVI15.1.2 系统稳定性优化篇(LMKD Ⅱ)PSI 压力失速信息

IVI15.1.4 系统稳定性优化篇(LMKD V)PIS监视器初始化极其工作原理--- 更新中