安卓3GB内存依然卡 iOS为什么1GB就够了?
因为 Android 机型普及了 2GB 甚至 3GB 的配置,所以当 iPhone 6/6 Plus 依然使用 1GB 内存的时候,不少关注硬件配置指标的用户都泪奔了。但是事实上,iOS 系统配置 1GB 内存依然运行流畅,而 Android 系统用上海量内存,依然卡卡卡卡卡,这其中的原因是 iOS 和 Android 系统运行应用的时候,有根本性的不同。
Quora 上有用户解释道,Android 系统运行应用使用的是 Java 环境,因此需要额外的内存来做垃圾回收 (garbage collection)。也就是当一个 Android 应用结束运行之后,Java 需要额外内存来回收该应用占去的内存。一般来说,在内存充裕的系统上,这个机制运行得还不错。一旦运行大批不同的应用,问题就出现了。以下表格显示,一个 Android 应用理论上使用一份内存,但是事实上却需要四份到八份的富余给 Java 去做回收,系统才能够达到流畅。开很多 Android 应用会卡卡卡卡卡,就是这个原因。
这样我们就可以理解为什么 Android 机型要配置海量内存了,因为更多内存消耗更多电力,自然厂商也不得不增加电池容量,来保证续航时间。
而 iOS 系统从设计开始,就不是这样的垃圾回收机制,而是应用要求多少就分配多少。所以 Android 旗舰机型是人前风光宣传自己海量内存加大容量电池,人后暗暗辛酸落泪。
via:MacX