【Android 进程保活】Low Memory Killer 机制

简介: 【Android 进程保活】Low Memory Killer 机制

文章目录

一、Low Memory Killer 机制

二、Low Memory Killer 参数





一、Low Memory Killer 机制


Android 中有一套 Low Memory Killer 机制 , 应用退出后 , 其进程不会马上被杀死 , 而是缓存起来 ;


如下图所示 , 点击回退键 , 使应用退出后 , 然后点击 Menu 键 , 从任务栈列表中扔可以看到退出的应用 , 此时点击该任务栈 , 仍可以将该应用拉起到前台 ;


image.png


打开应用越多 , 后台缓存的应用也就越多 ; 如果出现内存不足的情况 , 系统会根据 Low Memory Killer 机制 判定哪些进程被回收 , 为新的进程提供充足的内存 ;






二、Low Memory Killer 参数


查看 Android 设备中的 Low Memory Killer 机制 相关参数 ;


进入 Android 命令行 , 获取 root 权限后 , 执行如下代码 :


cat /sys/module/lowmemorykiller/parameters/minfree


执行上述命令 , 可以看到该配置文件中配置了 6 66 个数值 , 其单位是 4 K B \rm 4 KB4KB ,


C:\Users\octop>adb shell
walleye:/ $ su
walleye:/ # cat /sys/module/lowmemorykiller/parameters/minfree
18432,23040,27648,32256,55296,80640
walleye:/ #

image.png



分析 /sys/module/lowmemorykiller/parameters/minfree 配置文件中的 6 66 个数值 , 单位 4 K B \rm 4 KB4KB ;


18432,23040,27648,32256,55296,80640


最后一个数字 80640 8064080640 , 乘以 4 K B \rm 4KB4KB , 除以 1024 10241024 , 最后得到 ;


80640 × 4 K B 1024 K B / M B = 315 M B \rm \cfrac{80640 \times 4KB}{1024 KB / MB} = 315 MB

1024KB/MB

80640×4KB


=315MB


该配置的含义是如果当前可用内存小于 315 M B \rm 315 MB315MB , 就会将 空进程 杀掉 ;



内存不足时杀进程的优先顺序 :


18432 : 内存小于 18432 × 4 K B \rm 18432 \times 4KB18432×4KB 时 , 杀 " 前台进程 " ;

23040 : 内存小于 23040 × 4 K B \rm 23040 \times 4KB23040×4KB 时 , 杀 " 可见进程 " ;

27648 : 内存小于 27648 × 4 K B \rm 27648 \times 4KB27648×4KB 时 , 杀 " 服务进程进程 " ;

32256 : 内存小于 32256 × 4 K B \rm 32256 \times 4KB32256×4KB 时 , 杀 " 后台进程 " ;

55296 : 内存小于 55296 × 4 K B \rm 55296 \times 4KB55296×4KB 时 , 杀 " ContentProvider 进程 " ;

80640 : 内存小于 80640 × 4 K B \rm 80640 \times 4KB80640×4KB 时 , 杀 " 空进程 " ;


不同的手机中 , 对应的数值不同 , 越低端的手机 , 内存阈值越小 ;


如果可用内存低于上述的 6 66 个配置的内存数值 , 就会按照顺序 , 依次向上逐步杀进程 ;


目录
相关文章
|
4月前
|
存储 安全 Android开发
探索Android与iOS的隐私保护机制
在数字化时代,移动设备已成为我们生活的一部分,而隐私安全是用户最为关注的问题之一。本文将深入探讨Android和iOS两大主流操作系统在隐私保护方面的策略和实现方式,分析它们各自的优势和不足,以及如何更好地保护用户的隐私。
|
5月前
|
消息中间件 存储 Java
Android消息处理机制(Handler+Looper+Message+MessageQueue)
Android消息处理机制(Handler+Looper+Message+MessageQueue)
68 2
|
4月前
|
Linux Android开发 iOS开发
深入探索Android与iOS的多任务处理机制
在移动操作系统领域,Android和iOS各有千秋,尤其在多任务处理上展现出不同的设计理念和技术实现。本文将深入剖析两大平台在后台管理、资源分配及用户体验方面的策略差异,揭示它们如何平衡性能与电池寿命,为用户带来流畅而高效的操作体验。通过对比分析,我们不仅能够更好地理解各自系统的工作机制,还能为开发者优化应用提供参考。
|
4月前
|
算法 Linux 调度
深入探索安卓系统的多任务处理机制
【10月更文挑战第21天】 本文旨在为读者提供一个关于Android系统多任务处理机制的全面解析。我们将从Android操作系统的核心架构出发,探讨其如何管理多个应用程序的同时运行,包括进程调度、内存管理和电量优化等方面。通过深入分析,本文揭示了Android在处理多任务时所面临的挑战以及它如何通过创新的解决方案来提高用户体验和设备性能。
104 1
|
4月前
|
消息中间件 存储 Linux
|
5月前
|
消息中间件 存储 Java
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
|
5月前
|
消息中间件 存储 Java
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
Android面试高频知识点(2) 详解Android消息处理机制(Handler)
83 1
|
5月前
|
存储 安全 数据安全/隐私保护
探索安卓与iOS的隐私保护机制####
【10月更文挑战第15天】 本文深入剖析了安卓和iOS两大操作系统在隐私保护方面的策略与技术实现,旨在揭示两者如何通过不同的技术手段来保障用户数据的安全与隐私。文章将逐一探讨各自的隐私控制功能、加密措施以及用户权限管理,为读者提供一个全面而深入的理解。 ####
168 1
|
5月前
|
消息中间件 存储 Java
Android消息处理机制(Handler+Looper+Message+MessageQueue)
Android消息处理机制(Handler+Looper+Message+MessageQueue)
139 2
|
5月前
|
消息中间件 存储 网络协议
操作系统的心脏:深入理解进程间通信(IPC)机制
在现代计算机系统中,操作系统扮演着至关重要的角色,而进程间通信(IPC)作为操作系统的核心功能之一,极大地影响着系统的性能和稳定性。本文将通过浅显易懂的语言,详细探讨进程间通信的基本原理、主要类型及其实际应用,旨在为读者提供一个清晰且全面的理解和认识。 ##
319 1

热门文章

最新文章

  • 1
    Android历史版本与APK文件结构
  • 2
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 3
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 4
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
  • 5
    【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
  • 6
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
  • 7
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
  • 8
    escrcpy:【技术党必看】Android开发,Escrcpy 让你无线投屏新体验!图形界面掌控 Android,30-120fps 超流畅!🔥
  • 9
    即时通讯安全篇(一):正确地理解和使用Android端加密算法
  • 10
    Android实战经验之Kotlin中快速实现MVI架构
  • 相关实验场景

    更多