嵌入式开发交流网论坛
标题:
为什么苹果不扩大运行内存,而安卓机运存越来越大,差别在哪里?
[打印本页]
作者:
怡亚通
时间:
2020-3-16 09:03
标题:
为什么苹果不扩大运行内存,而安卓机运存越来越大,差别在哪里?
我们都知道手机要想运行速度快,除了和中央处理器相关之外,运行内存同样也起着关键性的作用,例如现在安卓手机动不动就是6G、8G运行内存,4G内存都不好意思拿出手了,但是为什么苹果手机不加大运行内存呢?要知道如今的iPhone11也才只有4G运存,相比安卓机最大的16G运行内存,差的可不是一点半点。但是苹果的系统响应速度,用过的小伙伴应该都知道是一种怎样的体验吧,那么为什么两者的流畅度会有所差别呢?今天小编就来带大家科普一下。
[attach]39780[/attach]
首先是两者的操作系统底层架构不同
,苹果手机采用的是闭源的iOS系统,是基于一用Unix系统开发的,懂程序的小伙伴应该略知一些,Unix系统是一个多用户多任务的分时操作系统,采用进程对换的内存管理机制和请求调页的存储方式,实现了虚拟内存管理,大大提高了内存的使用效率。由于Unix系统更接近底层,所以操作底层硬件响应速度要更快。而安卓则是基于Linux系统开发的,Linux又是基于Unix开发的,并且它有一个特性,就是在内存充足的情况下会多打开一些程序来加快下次打开这个程序的速度,所以就会出现本来只打开了几个应用程序,但是内存使用率已经很高了。
[attach]39781[/attach]
其次是内存管理机制不同
,在iOS系统中,应用程序退出后,iOS完全释放后台进程,运行内存会得到完全释放,而相反安卓系统中,应用程序退出后还会有部分或者全部的进程存在残留,如果不及时清理,只会导致杀后台很严重,这也是为啥安卓用户要定期清理运存的原因了。
再有就是运行机制不同
,iOS采用沙盒运行机制,安卓采用的是虚拟机运行机制,沙盒机制相当于把每个APP放在不同的沙盒里运行,彼此之间不受影响,处理速度自然更快,而安卓则是将程序放在虚拟的环境中运行,先将数据传送到虚拟机,再由虚拟机将数据传递到用户界面,这样过程中程序之间可以互相访问,并不是单独的个体,所以会导致杀后台很严重,手机也会越来越卡。
[attach]39782[/attach]
感谢您的观看,希望以上讲的比较明白,如果你喜欢的话,别忘了多多评论转发点赞哦!(本文内容属于原创,内容真实性已考证,图片来源于网络,如有侵权,请联系作者删除)
欢迎光临 嵌入式开发交流网论坛 (http://www.dianzixuexi.com/bbs/)
Powered by Discuz! X3.2