iOS内存深入理解
在读至 《程序员的自我修养-链接装载与库》1.5章节时, 就在想iOS中是页大小以及如何映射物理内存的?
分页以及页的大小
早版本的iOS页的大小,页的尺寸是4kb,在最新的iOS,A7和A8的系统开放了16kb的64位用户空间对应了4kb的物理页,A9的时候开放了16kb的页并且对应了16kb的物理页。
在WWDC 2018 iOS Memory Deep Dive中有讲到每页16KB 以及 iOS 是如何管理虚拟内存与物理内存的关系,以及如何减少内存使用。
iOS中的内存页
iOS 中的内存页通常为 16kb
我们应用在内存中的大小就是页数 * 页面大小
页可以容纳多个对象, 一个对象也可以占多个页
问题: 页可以分配多个对象的话, 那代表页中空余的空间是可以利用的, 是如何做到的?
内存类型
内存通常分为两种类型 clean 或者 dirty, 视频中还提到了内存压缩
问题: 内存压缩是如何做到的
- clean