don*_*ile 5 iphone memory-management core-data
来自文档:
注意:核心数据避免使用术语"不起诉",因为它令人困惑.虚拟内存页面错误没有"无故障".页面错误被触发,导致,触发或遇到.当然,您可以通过各种方式将内存释放回内核(使用函数vm_deallocate,munmap或sbrk).核心数据将此描述为"将对象变为故障".
核心数据中的故障本质上是内存页面错误吗?我对内存页面的内容只有一点了解.我相信它是执行程序和类似内容所需的"内存中的一段代码",并且当应用程序运行时,代码片段作为"页面"被吸入内存并因为它们不被丢弃而被丢弃需要了.可能99%错了;)
任何人?
我对内存页面的内容只有一点了解.我相信它是执行程序和类似内容所需的"内存中的一段代码",并且当应用程序运行时,代码片段作为"页面"被吸入内存并因为它们不被丢弃而被丢弃需要了.
内存(即代码和数据)存在于内存中.
存在于存储器中的每个东西都有一个地址(存储器地址).
内存地址空间(例如32位机器上的4GB)被划分为"页面",其中每个页面是连续的内存块(例如,每页4KB).
地址空间(通过CPU和O/S)映射到RAM(或可能映射到I/O端口,但这是一个不同的故事).
可能安装的RAM(例如1 GB)少于地址空间(例如4 GB),因此可以将某些内容(例如最近最少使用的内容)从RAM换出(通过O/S)磁盘上的页面文件.整个页面(例如4KB块)是交换的(不是单个字节).
当应用程序尝试访问当前未映射到RAM的地址时,那就是所谓的页面错误.为了处理页面错误,操作系统可能:
| 归档时间: |
|
| 查看次数: |
3595 次 |
| 最近记录: |