华为的方舟编译器的推出,就是为了推出自己的操作系统做准备吗?

南风沁人心


文 | 极客宇文氏

方舟编译器究竟想做什么?

我之前问答也有提到,方舟编译器从技术角度上说就是从编译的层面提高手机软件的性能。

不仅仅是华为手机,目前安卓手机上的大部分软件都是Android开发人员开发的,所使用的编程语言是Java,Java是一种既可以被认为是编译性语言又可以被认为是解释性语言的语言,它被编译class字节码以后,又要经历Java虚拟机的解释才能最终被翻译成机器可以读懂的机器码。

这个过程就是比较耗费性能的一件事情,尤其是安卓软件,比如一个安装包被手机点了安装以后需要花费一定时间才能完成,在现在安装包越来越大的情况下,这时间也被慢慢放大,还有一些手机软件运行起来启动的时候也是属于比较缓慢的。是因为在手机上这些软件被编译器边解释边运行,因此这个过程存在优化空间。

华为的方舟编译器具体实现我没有去深究,但是它的思路大概就是想在这个“解释”的过程进行优化改造,如果这个编译器可以理想化的话,那么华为确实将在安卓软件开发层面打下一个非常漂亮的格局,但是最终谷歌会不会不乐意就不知道了,毕竟安卓操作系统是谷歌所有的,我们华为明显是想从中分一杯羹。

因此方舟编译器是在安卓手机上进行一次革命,当然华为一定会想好如果自己拥有一套操作系统,这个方舟一定会兼容这个操作系统的,生态环境无法衔接是理所当然的事情。

宇文氏习惯性总结:

无论你有没有看懂我说的方舟编译器的作用,你只需要知道华为确实是一个非常有理想有格局的企业,无论方舟成败与否,为华为点赞。

关注“极客宇文氏”,一名有料热心的软件工程师。

极客宇文氏


方舟编译器,首先要讲一下什么叫编译。因为机器是只能做数字计算的,能够让机器去运算的,数字的语言就是机器语言。除此之外的所有计算机语言都是非机器语言。为了让机器可理解,相对于机器语言的高级语言都需要一个转换,从高级、机器不可理解,转换为机器可理解的机器语言,这样的一个转换过程就叫做 编译(Compile),由 编译器(Compiler)来完成。

对这个方舟编译器,我们有几个猜测。

一 纯编译,就是全部自己写的,不过这个工程量很大,代码也会很多,优点是全是自己的写的,缺点肯定是安装文件会特别大。

二 种是华为学的是苹果手机系统,自己编了个runtime编译器,取名方舟编译器,然后可以加载所有的内容。这走的是苹果的套路。

三 是华为自己先把一些常用的机器码编译出来,再加上runtime。这种也是大家觉得最靠谱的一种观点。

不可否认,华为在为自己的系统做着准备,但是不管是怎么讲?华为这样做也是真的在为自己以后的后路做准备,其实这也提醒其他的手机厂商小米OPPO vivo也应该有华为这样的战略远光才好。


天豪孤情剑


小米类似猴也追不上华为,差距越来越大,华为有芯片了,快走自己的系统了,现在在做生态,小米屁都没有,还给别人科普,靠嘴科普出来终究是虚的


奔波的飞毛腿


如果真是这样,一点戏也没有。


分享到:


相關文章: