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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 760|回复: 0

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

[复制链接]

15

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-5-3 18:42:17 | 显示全部楼层 |阅读模式 来自 中国
众所周知,国行版P30系列手机发布后,华为还带来了重量级工具--方舟编译器。
: s: x  {1 K2 E8 j7 c1 V. ]按照华为的说法,通过这个编译器,系统操作流畅度将提升24%,而系统响应速度将提升44%,至于第三方应用重新编译后流畅度可提升60%!因为是开源的,应该是没有吹牛,是真实的这么厉害。
# i8 N0 `) f: F$ E6 Q( L$ k5 L" v但自方舟编译器之后,众多的网友就开始帮华为吹牛了,说这是华为分割安卓生态的开始,甚至将其提升到了华为自研操作系统的高度,说就是自研系统。
( n" ]# z* W4 p8 [/ C但事实上这到底是什么东西,大家又真的理解么?一个编译器就成了自研操作系统?是不是有点吹过了点?" K( a9 L" i7 Q7 p# p* A
所谓的编译器是指将程序(APP)语言翻译成机器语言的东西,简单的来讲,安卓系统中的APP基本上是JAVA写的,JAVA语言机器不懂,必然要有编译器来帮机器翻译下。
- J$ |; Z6 a, P1 h1 [6 o9 L8 m安卓系统中并不是没有这样的编译器,在安卓5.0之前用的是这个编译器-- Dalvik ,确实是边解释边执行,效率低。于是在安卓5.0的时候,谷歌抛弃掉了它,换上了 Art。  i6 A9 M* e& N
Art是在APP初次安装时,就将APP解释成机器码,这样速度就快了,但坏处是安装时速度慢,要等很久,因为是边安装边解释。于是到安卓7.0时,谷歌又加入了JIT,这个是及时编译。
- T5 k  c2 c8 f2 k+ C3 t2 `% Q所以现在安卓系统中是Art、Jit同时时存在,即初次安装APP时,会有部分核心代码直接编译成机器码存放。还有没有编译的部分会在执行时用Jit去执行编译,这是谷歌在权衡了安装时间、空间、执行速度、效率之后做的取舍,算不上最佳。( l6 @) }; M, l7 O# `" \
接下来说说方舟编译器了,它就是上文所说的Art、Jit这些编译器类似的东西,主要作用就是把APP开发时就直接编译器成机器码了,这样当APP安装到系统中,就不需要通过安卓系统中的编译器去解释,这样自然效率更高一点。: o- r! `7 @* D* ^9 n
我这样一解释,相信大家就明白了,这是一个在APP开发时就将Java等语言直接编译成机器语言的工具,这和所谓的自研操作系统完全不是一回事,不知道为何大家就觉得这是华为的自研系统了。
- N' Z  |" B' f+ R, T当然,如果华为真要自研系统,最终的可能是将这个编译器变成自研系统的开发工具,这样通过这个工具开发出来的APP,就是在机器码的形式存在。/ u/ @+ N" R/ q
但那也是以后的事情,先要等自研系统出来,同时还要有APP厂商愿意用这个编译器来基于自研系统开发APP,路还很漫长。
: ~# m/ S0 P: U% k
( n' Q) s* X9 |! P: Y来源:http://www.yidianzixun.com/article/0Ltv729H$ e& w0 L# y0 c* m% ~+ y3 _
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

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

×

帖子地址: 

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-10-15 04:18 , Processed in 0.037339 second(s), 25 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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