高考考试网
当前位置: 首页 高考资讯

android版本大全(安卓版本进化史)

时间:2023-07-05 作者: 小编 阅读量: 1 栏目名: 高考资讯

在智能手机领域,Android手机的销量占据着绝对的霸主地位,市场占有率达到了惊人的将近80%之多。一直以来,很多人提到Android系统,第一印象可能是卡顿、速度慢。Android架构图二、JIT编译器随着Android系统的发展需求,Dalvik虚拟机的弊端越发显现出来,软件每次运行,都需要对字节码进行解释,严重影响性能、执行效率。在2016年8月发布的Android7.0版本,Google让JIT编译器又回到了我们的视线,从而形成了JIT/AOT混合编译的策略。

在智能手机领域,Android手机的销量占据着绝对的霸主地位,市场占有率达到了惊人的将近80%之多。一直以来,很多人提到Android系统,第一印象可能是卡顿、速度慢。至于速度慢的原因,我在上一期的文章中,已经有进行全面的分析了,大家可以具体查看《彻底搞懂Android系统比苹果IOS系统慢的原因》。

今天我要改变大家对Android的印象,大家要以发展的眼光看待事物,现在已经是2021年了,经过十几年的发展,Android的用户体验已经非常流畅、快速了。这得益于Google一直致力于Android运行机制的提升。

安卓系统

借此机会,我来给大家详细分享一下,Google这些年Android系统进行优化、提升的历程。

一、Android诞生

在2007年底,谷歌公司首次推出了Android系统,这里简单说明一下,Android系统其实是由开发手机联盟共同开发的,这是一个全球性的组织,由Google公司倡导发起,其成员很多世界性的伟大企业,如高通、三星、中国移动、华为等。因此,Android能得到了众多巨头企业的支持,也就能够得到快速的发展、推广。

开放手机联盟

Google采用Java作为Android系统中,应用软件的开发语言,因此,Android应用软件也是基于Java虚拟机的运行机制。

针对移动端的硬件特性,Google对Java虚拟机进行了重新设计,命名为Dalvik虚拟机,Dalvik在软件执行时,将字节码(Java程序开发完,打包后的代码)解释成处理器指令,以便操作系统进一步处理、执行。

跟传统基于栈架构的Java虚拟机不同的是,Dalvik是基于寄存器架构,寄存器是更靠近CPU的存储架构,因此,运行速度相对会更快。另外,Dalvik处理的是更加精简的Dex字节码,这就进一步提升了执行效率,满足移动端硬件的要求。

Android架构图

二、JIT编译器

随着Android系统的发展需求,Dalvik虚拟机的弊端越发显现出来,软件每次运行,都需要对字节码进行解释,严重影响性能、执行效率。

为此,Google在2010年发布的Android 2.2版本中,增加了JIT编译器,Just-In-Time Compiler,即时编译器。

JIT编译器的加入,带来了以下好处:

首先,JIT编译后的指令码非常的精简,执行效率非常高。

其次,JIT对字节码进行分析,优先编译需要经常执行的代码,另外,编译后的代码会被缓存,因此,只有遇到新的代码才会进行编译,这样不仅减少了编译的工作量,还大大减少了内存的消耗。

三、ART虚拟机

JIT编译器的加入,虽然提升了性能,但还是需要在软件执行的时候编译代码,编译的操作本身就会带来额外的消耗,还是会影响运行时性能。

有没有更加优化的方案呢?答案是当然有,Google在2013年10月发布的Android 4.4中,又给了 我们很大的惊喜。

在这个版本中,带来了全新的ART虚拟机运行环境,以及全新的编译策略AOT(Ahead-of-time)。AOT是采用预先编译的策略,即在软件安装时,就一次性将字节码编译成可在设备上直接执行的本地机器码。

这也就意味着,软件在运行过程中再也不需要进行编译代码的动作了,直接执行机器码。带来的好处,是运行速度大大提升,并且省电。另外,ART也在垃圾回收方面进行了优化。

当然,AOT也有一些缺点,安装时间较长、软件安装后体积占用变大,但总体来说,还是好处大于缺点的。

Android 4.4时,Dalvik、JIT、ART、AOT共存,在Android 5.0后只有ART AOT的模式,标志着Dalvik彻底完成了自己的历史使命。

四、JIT的回归

针对AOT的缺点,Google找到了新的解决办法。在2016年8月发布的Android 7.0版本,Google让JIT编译器又回到了我们的视线,从而形成了JIT/AOT混合编译的策略。

在该版本中,应用在安装时不再进行编译,因此安装时间变短,软件的体积也变小了。

软件在执行时,对当前需要执行到的代码,还是采用JIT编译策略,即遇到新代码时,进行编译、缓存,已被编译过的代码则直接执行缓存。另外,JIT还会对软件中的其它所有热点函数(需经常执行的代码)进行分析、识别,并将分析结果保持到profile文件中。

当手机处于空闲时,AOT编译器,就会扫描profile文件,对其中记录的热点代码进行AOT编译。这样,只对执行概率比较高的代码进行提前编译,并且是在空闲的时间进行编译,既减小了体积,又提升了系统的性能。

最后,用一张图带您快速了解,安卓系统优化简史:

版本历史

    推荐阅读
  • 信手拈来的信是什么意思(信手拈来出处)

    以下内容希望对你有帮助!信手拈来的信是什么意思信手拈来的信释义:随便,放任。多指写文章时能自由纯熟地选用词语或应用典故,用不着怎么思考。

  • 猪蹄怎么选(怎么能选到好猪蹄)

    怎么能选到好猪蹄看颜色,仔细观察蹄子:浸泡过的猪蹄一般发涨,会比比没浸泡正常的猪蹄大很多,所以选大小不一定是好的平常市面正常大多数猪蹄一个大约八两到一斤二两左右,如果涨得太大就应该是泡水过的去毛后的猪蹄一般颜色是淡黄。

  • 鲜虾披萨怎么做(鲜虾披萨做法)

    面团发至2倍大。黄油融化后放入青椒、洋葱、盐,煸炒。抹番茄沙司,放一层奶酪。放洋葱、青椒、虾、玉米粒、马苏里拉奶酪。烤箱预热190°,大约用时8分钟左右,将披萨盘放入烤箱第二层,上下管加热模式12分钟左右。中途取出,在披萨饼边刷全蛋液,继续烘烤。

  • 菊花开后插土里能活吗(菊花剪枝插土里能不能成活)

    2、水插养护菊花开后想要让它存活的时间长一点,那么我们可以使用水插的方法来养护,将其放入装有水的花瓶中,养护期间勤换水,保证水质清洁,还需要做好通风管理,这样它大概可以存活一周左右的时间。

  • word如何做出好看的表格(如何绘制不规则表格)

    Word插入表格的形状过于单调,没办法满足我的工作需求该怎么办?

  • 世说新语全篇文章解析(世说新语窥见那个风流怪诞清谈的时代)

    接下来开始今天的《世说》故事分享,希望对朋友们有些许帮助。——《世说新语.德行》译文:管宁和华歆同在园中除草。看到地上有一片金,管宁依旧挥动着锄头,像看到瓦片石头一样没有区别,华歆高兴的拾起金片,然而看到管宁的神色后又仍了它。管宁就割断席子和华歆分开坐,说:“你不是我的朋友了。”但是,华歆贪慕虚荣,也不能怪管宁割席断义。

  • 囍这首歌的故事(囍这首歌曲背后诡异的故事)

    男人与女人自幼为青梅竹马,男人考取功名,女人于村中静候男人归来,却不料遭了同村王二狗的玷污,女人不堪,以一尺白绫而去。假如说冥婚的解读让整首歌交织于数种情感之中,男人与女人的悲、喜、愁、村民对冥婚的畏,杀人凶手”王二狗害怕寻仇的惧怕,其中交杂的韵味属实让人着迷。

  • 纳智捷油耗什么梗(纳智捷油耗到底多高)

    美系车、国产车在“油老虎”排行榜上经常出现,有一款国产车经常占据第一名,这款车就是纳智捷大7。网友发现小区门口的一辆纳智捷大7后面拉了一条横幅,原本以为是车主想要跟女友求婚,所以在车上拉了一条横幅。但这并不意味着纳智捷大7完全没有优点可言,这款车的空间表现还是让人非常满意的。纳智捷大7虽然因为油耗的问题饱受吐槽,但是它颜值高、空间优秀,也满足了部分车主买车的需求。

  • 心脏病最意想不到的7大诱因 心脏病最大的诱因是什么

    目前我国每年因冠心病死亡的人数约有260万,给社会和家庭造成沉重的负担,实际上冠心病完全可以通过一、二级预防来进行预防治疗。幸运的是,由于性生活引发的心脏病其绝对数量微不足道,发病率小于1%。这些风险因素会导致心脏病和心脏性猝死。