京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 564|回复: 0

华为方舟编译器到底有多牛?是怎么让安卓系统更流畅的?

[复制链接]

15

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-5-3 18:42:17 | 显示全部楼层 |阅读模式 来自 中国
众所周知,国行版P30系列手机发布后,华为还带来了重量级工具--方舟编译器。
7 s0 V4 ?5 f$ T0 v6 ^按照华为的说法,通过这个编译器,系统操作流畅度将提升24%,而系统响应速度将提升44%,至于第三方应用重新编译后流畅度可提升60%!因为是开源的,应该是没有吹牛,是真实的这么厉害。9 y  F" o( B/ `4 X4 v4 a
但自方舟编译器之后,众多的网友就开始帮华为吹牛了,说这是华为分割安卓生态的开始,甚至将其提升到了华为自研操作系统的高度,说就是自研系统。7 U9 p( c; w4 T! H4 y3 J
但事实上这到底是什么东西,大家又真的理解么?一个编译器就成了自研操作系统?是不是有点吹过了点?: G$ _$ _: B0 k( d
所谓的编译器是指将程序(APP)语言翻译成机器语言的东西,简单的来讲,安卓系统中的APP基本上是JAVA写的,JAVA语言机器不懂,必然要有编译器来帮机器翻译下。* F' T& Y. e6 t4 B9 i$ j
安卓系统中并不是没有这样的编译器,在安卓5.0之前用的是这个编译器-- Dalvik ,确实是边解释边执行,效率低。于是在安卓5.0的时候,谷歌抛弃掉了它,换上了 Art。' k- l5 N" \, L/ Q  H! `
Art是在APP初次安装时,就将APP解释成机器码,这样速度就快了,但坏处是安装时速度慢,要等很久,因为是边安装边解释。于是到安卓7.0时,谷歌又加入了JIT,这个是及时编译。! F6 l) b( h) Y" l/ R1 S
所以现在安卓系统中是Art、Jit同时时存在,即初次安装APP时,会有部分核心代码直接编译成机器码存放。还有没有编译的部分会在执行时用Jit去执行编译,这是谷歌在权衡了安装时间、空间、执行速度、效率之后做的取舍,算不上最佳。* _  F: d& {: `) W0 v
接下来说说方舟编译器了,它就是上文所说的Art、Jit这些编译器类似的东西,主要作用就是把APP开发时就直接编译器成机器码了,这样当APP安装到系统中,就不需要通过安卓系统中的编译器去解释,这样自然效率更高一点。
+ F$ e1 T" Y$ i2 T1 E我这样一解释,相信大家就明白了,这是一个在APP开发时就将Java等语言直接编译成机器语言的工具,这和所谓的自研操作系统完全不是一回事,不知道为何大家就觉得这是华为的自研系统了。
/ H+ |& E$ Z, [9 h: N* m当然,如果华为真要自研系统,最终的可能是将这个编译器变成自研系统的开发工具,这样通过这个工具开发出来的APP,就是在机器码的形式存在。, Q" _+ b/ t9 a
但那也是以后的事情,先要等自研系统出来,同时还要有APP厂商愿意用这个编译器来基于自研系统开发APP,路还很漫长。8 k& E" ~, I, F. z. n% U

" E5 Y5 S0 D, e, T来源:http://www.yidianzixun.com/article/0Ltv729H
+ c5 X8 T6 N7 K3 a免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

帖子地址: 

梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2026-1-17 22:07 , Processed in 0.037181 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表