和你一起终身学习,这里是程序员Android
经典好文推荐,通过阅读本文,您将收获以下知识点
一、Camera 内存包含哪些内容
二、VSS/RSS/PSS/USS 内存介绍
三、内存查看常用命令
四、内存泄漏相关知识点
五、参考文献
一、Camera 内存包含哪些内容
1.1 Camera 内存介绍
从Camera 角度理解Total RAM分为:Free(剩余内存)、Others(非Camera 模块)、Camera APP、cameraserver、camerahalserver、以及Linux Kernel。
另外,整个手机不只有Linux,还有其他作业系统同时运行,所以也会切走一块Reserved,比如:modem。
1.2 Camera 总内存包含哪些
Camera 总内存包含:Camera app、cameraserver、camerahalserver 这三个进程的内存。
1.3 Camera 内存拆解
Camera 内存拆解主要包含 ION内存,Non-ion内存两个。
1.3.1 Non-ion
1.CPU 可存取,没有特别要求,通常会是这一类(比如:堆 HEAP、栈 Stack、全局变量 Global Variable等等)
2.因为各种技术成熟(虚拟地址空间 Virtual Address space ,CPU L1/L2/L3 缓存,Zram Swap... ...)此类对系统负担较轻
1.3.2 ION
可以给硬体存取(GPU /ISP ...),可跨进程,跨Kernel进行内容分享(3A tunning data from userspace to kernel driver)
可以存放Camera Frame Buffers
二、 VSS/RSS/PSS/USS 内存介绍
内存占用规律 VSS >= RSS >= PSS >= USS
2.1 VSS
Virtual Set Size 虚拟耗用内存(包含共享库占用的内存,以及分配单未使用的内存)
很少被用于判断