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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 583|回复: 0

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

[复制链接]

15

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-5-3 18:42:17 | 显示全部楼层 |阅读模式 来自 中国
众所周知,国行版P30系列手机发布后,华为还带来了重量级工具--方舟编译器。
2 y( [# _/ F+ T按照华为的说法,通过这个编译器,系统操作流畅度将提升24%,而系统响应速度将提升44%,至于第三方应用重新编译后流畅度可提升60%!因为是开源的,应该是没有吹牛,是真实的这么厉害。/ t6 m0 M1 X$ p% s$ K  w6 m
但自方舟编译器之后,众多的网友就开始帮华为吹牛了,说这是华为分割安卓生态的开始,甚至将其提升到了华为自研操作系统的高度,说就是自研系统。
4 a- }# q2 J' Q" e; z1 {# I但事实上这到底是什么东西,大家又真的理解么?一个编译器就成了自研操作系统?是不是有点吹过了点?& q+ n: K' E$ `! W3 K; a
所谓的编译器是指将程序(APP)语言翻译成机器语言的东西,简单的来讲,安卓系统中的APP基本上是JAVA写的,JAVA语言机器不懂,必然要有编译器来帮机器翻译下。% k9 I+ R7 I7 J% e( `
安卓系统中并不是没有这样的编译器,在安卓5.0之前用的是这个编译器-- Dalvik ,确实是边解释边执行,效率低。于是在安卓5.0的时候,谷歌抛弃掉了它,换上了 Art。
- [) F1 D& I. z3 a2 PArt是在APP初次安装时,就将APP解释成机器码,这样速度就快了,但坏处是安装时速度慢,要等很久,因为是边安装边解释。于是到安卓7.0时,谷歌又加入了JIT,这个是及时编译。
1 P. l5 N2 |- T( ~$ d& k所以现在安卓系统中是Art、Jit同时时存在,即初次安装APP时,会有部分核心代码直接编译成机器码存放。还有没有编译的部分会在执行时用Jit去执行编译,这是谷歌在权衡了安装时间、空间、执行速度、效率之后做的取舍,算不上最佳。
' n' u. k/ }. g' F接下来说说方舟编译器了,它就是上文所说的Art、Jit这些编译器类似的东西,主要作用就是把APP开发时就直接编译器成机器码了,这样当APP安装到系统中,就不需要通过安卓系统中的编译器去解释,这样自然效率更高一点。0 D* g+ Q# ]9 D5 n
我这样一解释,相信大家就明白了,这是一个在APP开发时就将Java等语言直接编译成机器语言的工具,这和所谓的自研操作系统完全不是一回事,不知道为何大家就觉得这是华为的自研系统了。
$ K' G0 F/ _1 ]. r2 A当然,如果华为真要自研系统,最终的可能是将这个编译器变成自研系统的开发工具,这样通过这个工具开发出来的APP,就是在机器码的形式存在。7 I$ f9 J3 l2 u0 S
但那也是以后的事情,先要等自研系统出来,同时还要有APP厂商愿意用这个编译器来基于自研系统开发APP,路还很漫长。6 C8 q0 s' K" O# l; c# g& y0 p9 R

: d: p" n9 a5 {2 |) e6 g来源:http://www.yidianzixun.com/article/0Ltv729H/ j( L7 i9 O$ k" e
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

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

×

帖子地址: 

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-4 03:35 , Processed in 0.035826 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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