iOS 内存

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fly1183989782/article/details/81143225

    观看 Fixing Memory IssuesApp Startup Time: Past, Present, and Future 两个视频的总结。

一、Virtual Memory VS Physical Memory

    Virtual Memory 是开发者视角的 memory,会分多个 region(code region、heap region(maybe))),region 再分多个 page,virtual memory 会按需加载 page 到 physical memory。

一、Clean Memory VS Dirty Memory

    clean memory 是 readonly 的内存,系统内存紧张的时候,可以直接丢弃,需要时重新加载的 memory。

    dirty memory 是可以可能被修改的内存,系统内存紧张的时候,不能直接丢弃,需要 swap 到 disk 上。iOS 系统没有 swap 的机制,系统很需要内存的时候,是通过 kill 进制来回收这部分 dirty memory 的,所以要格外的关注 dirty memory 的使用情况。

一、Private Memory VS Shared Memory

     代码区映射到内存中,会是 Shared Memory。Mallco 区、栈区是 Private Memory。所以说进程会拥有自己的内存空间。

猜你喜欢

转载自blog.csdn.net/fly1183989782/article/details/81143225