您的位置:首页 > 其它

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

2016-10-26 15:25 330 查看
 

 在手机菜单: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(内存压缩)介绍

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