您的位置:首页 > 其它

[FAQ09452]手机cached free memory(剩余内存)计算方法

2016-04-23 11:45 363 查看
DESCRIPTION]

在手机菜单:setting->apps->running apps里面看到的 可用内存是如何计算的?



[SOLUTION]

计算方法请参考:RunningProcessView.java(/alps/packages/apps/settings/src/com/android/setting/applications)里面的void refreshUi(boolean dataChanged)接口:

1、首先获取 /proc/meminfo信息

2、availMem = mMemInfoReader.getFreeSize() + mMemInfoReader.getCachedSize()

- SECONDARY_SERVER_MEM; (因为不同平台,不同配置SECONDARY_SERVER_MEM会不同,如果想确定该值具体大小,建议您在这边自行加log打印该值)

3、 mLastAvailMemory = availMem;

long freeMem = mLastAvailMemory + mLastBackgroundProcessMemory;

4、freeMem即为可用内存,已用内存即为meminfo.total - freeMem

所以,这里会包含background process占据的内存

其它内存相关FAQ,欢迎访问

FAQ04223 如何查看Modem/Kernel/FrameBuffer的Footprint?

FAQ04354 内存不足时查看内存使用情况的一些adb command

FAQ07759 如何查看当前项目的physical memory
layout

FAQ07760 如何查看当前项目的virtual memory
layout

FAQ09454 如何计算开机之后留给Linux Kernel可用的总内存

FAQ09456 zram(内存压缩)介绍
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: