昨日,中兴Axon 30 Ultra航天版正式发布。对比之前的普通版本,航天版最大的变化在于这将是首个“18GB+1TB”搭配的安卓机型。这也预示着未来主流的安卓旗舰机的RAM可能快要从8/12GB升级到18GB甚至更高。
但是反观隔壁的iOS,最新的iPhone 13 Pro系列只有6GB内存,普通版本更是只有4GB。为什么现在安卓手机的RAM越来越大了?从8GB到12GB再到18GB,而苹果手机却只需要安卓的一半甚至更少。这是苹果落后了还是库克“抠门”?其实真实原因并不只是节省成本这么简单。
在对比iOS和Android两个系统内存管理机制的差异之前,我们需要先了解一些专业名词背后的含义。
RAM也叫运行内存,RAM的大小直接决定了你在手机后台能开多少程序;ROM叫机身存储,ROM的大小决定了你能在手机中安装多少程序,存放多少照片、歌曲。
如果你在使用手机时,打开了多个APP,当手机运存不够时,手机将自动关闭部分APP释放空间,以满足新APP的需求,俗称“杀后台”。
当你的手机习惯性的“杀后台”,势必就会影响手机的性能和电池,并且在你重新打开APP所耗费的时间也会让你感觉手机“不流畅”。所以,在其他配置相同的情况下,当打开的手机APP一样多时,运存越大,手机越流畅。
在日常使用中,我们运行程序的种类和数量都差不多,为什么安卓却需要比苹果更大的运存才能保障流畅性呢?
因为安卓所采用的是“真后台”——APP在前台运行和在后台挂起所占用的运存是差不多的,这就使得它更占内存。而苹果的后台是虚拟后台,APP放到后台是被挂起,不会工作的。
当上一个任务被迫中断时,系统会记录当下应用程序的状态,随后程序被冻结起来,就像把事件记录在墓碑上一样。当需要恢复时,根据墓碑上的内容,将程序恢复到中断之前的状态。
因此,iOS的墓碑机制让它的应用在后台时,比Android节省了更多的内存。所以在保证基本相同的后台应用数量这一情况下,iOS需要的内存要远远少于Android,而Android却需要更多的内存空间才能保证手机的使用流畅。
除了iOS的墓碑机制之外,苹果的严格审查和沙盒机制也让它不需要这么大的运存空间。
安卓系统由于没有严格的审核制度,开放性极强,市场良莠不齐,导致各种乱七八糟的APP层出不穷。这些APP有一系列“流氓行径”:各种乱启动、乱获取权限,关键还会唤醒同党,随便打开一个APP,后台千千万万个APP起来了,运存瞬间被挤爆。
而苹果则不同,App Store里所有的APP都需要经过苹果官方的审核,它们获取权限需要经过用户的同意。在你主动退出后,系统会完全杀死APP和所有进程,更不会悄悄在后台打开。
加上iOS采用沙盒机制,每个APP放在独立的沙盒里,相互之间无法干扰访问,自然不存在主动唤醒其他APP的可能。因此,在严格的管控下,iOS的软件对运存的要求自然远比安卓小。
苹果的推送通知服务也在一定程度上降低了运存使用空间。iOS系统的通知消息统一通过苹果服务器推送给你,这样可以让你无需打开APP,也能接收通知消息,无形中降低了运存使用空间。
我要吐槽弹幕而由于国内使用Android系统的手机厂商众多,加上安卓系统的开源性,导致目前并没有形成统一的推送联盟。如果你需要推送服务的话,你的消息只能经由APP或者第三方服务平台推送给你。比如你有微信、淘宝、钉钉等软件,它们各自的推送无形之中就造成了运存使用率的增大。
综上所述,由于苹果的墓碑机制加上官方的严格审查、沙盒机制和统一强制的推送服务,让苹果不需要特别大的运存空间即可满足其流畅性;而安卓因为“真后台”、开源性等原因,就需要更大的内存才能够保证满足用户的使用体验。
所以并不是苹果落后于安卓,也不是库克“抠门”,而是两大系统运存管理上存在着一些差异。内存当然是越多越好,但是由于iOS和安卓运存管理机制的不同,两者没有办法直接比较。