内容大概:1、itouch内存情况概述2、可用内存3、空闲内存以及释放内存的原理以及弊端4、虚拟内存itouch内存情况概述废话不说,直接入题
大家都知道itouch4只有256m内存(实际是247m),因此可用内存和虚拟内存一直都是大家比较关心的
下面我就来就大家的一些疑问发表一下我的看法
首先,itouch4的内存是这样的,与电脑不同,是集成到a4处理器内部的
a4处理器一共有三层,包括1层是cpu,gpu,内存控制,高速缓存等一堆乱七八糟的东西,然后剩下两层就是内存,也叫ram
可能当时ipad1的a4太多了,或者由于大量生产价格低,因此itouch使用的就是ipad1用的a4(有拆解为证),也就只有256m的ram了
iphone4使用的也是a4,但是型号是不一样的,有人测定iphone4的处理性能会比itouch4差一点,也算是个补偿了吧
除此之外,大家还要注意,itouch的内存是很多功能模块共用的,247m的ram要提供给cpu,同时还要提供gpu的显存,flash的缓存还有ramdisk
cpu也就是系统分得的部分再去掉系统进程占用的,最后留给用户的其实不多,一般来讲,可用内存100m左右时正常的
由此可见,大家不要想在硬件上加内存了,除非换掉a4
可用内存接下来是关于可用内存的一些问题
大家一定要分清楚可用内存和空闲内存的关系
空闲内存指的是当前已经被系统标记为空闲的部分,这里面没有存放任何有用的数据
而可用内存指的是当进程申请的时候可以提供的最大内存,包括一些不太重要的进程占有的或者是一些可有可无的部分也算在内
当你的前台进程请求的时候,系统会先提供空闲的,如果不够用了再释放那些不重要的给前台进程用
有时候系统不希望某进程占用太多的内存,回复的可用内存也不会太高
但是随着前台进程占用的越来越多,系统还是会尽量提供的
因此最开始显示的可用内存完全有可能被突