Android手机的存储机制到现在都没有改变,时间久了还是会卡。之所以会卡,主要是因为存储机制。
Android的存储机制是闪存,这涉及到OP(Over Provisioning)。OP空间由flash存储器主机保留。SSD和手机厂商会给OP留出一些空间,一般至少7%。高端固态硬盘和手机的OP空间可以达到20%到30%以上。OP的大小对性能有很大的影响。只能说手机越高端,OP空间就越大。OP空间类似于我们平时玩的数字华容道。
假设我们要写一个4KB的数据,但是一个块中没有干净的空间,但是有无效的数据要擦除,那么主设备就把所有的数据移动到缓存或者OP空间,然后擦除这个块,然后4KB的新数据被写回。此操作导致写入放大,即写入原始4K数据,但写入整个数据块(512KB),即放大128倍。然而,随着闪存的空闲空间越来越少,主控的空间也越来越小。
这样安卓手机随着读写操作次数的积累,日积月累,用久了,干净的空间越来越少,垃圾越来越多,自然会卡。
一般来说,Android手机在下载应用程序后,随着应用程序运行时间越来越长,可能会在磁盘中存储大量文件。即使卸载了应用程序,它仍然会存在。久而久之就会越来越卡。所以和用户的使用习惯有很大关系。
——这里是安卓和苹果的分界线。
苹果手机的存储机制是沙盒机制。app之间是相互独立的,谁也不能访问对方的文件,即使是系统级的app,自己下载的app也是一样的。这个总空间一开始就是固定的,iPhone就像一个建筑。app有单独的房间,app数据活动空间只在这个房间。当你想删除一个app时,系统会提示你是否保留应用数据。如果你不这样做,整个“房间”都会。这也是沙盒机制能够极大保证系统安全性的原因。没有授权,app之间的数据是不共享的,不能互相访问。