华为方舟编译器是什么原理?
首先三种计算机语言:第一,机器语言,就是0、1二进制代码。第二,汇编语言,就是通过机器硬件将机器语言编译成我们能看明白的编译语言,就相当于翻译器。第三,高级语言,就是程序员编程,比如JAVA 编程等。
安卓系统基本操作。除了华为、苹果之外其他手机厂商也基本用安卓系统。简单点说,就是用JAVA虚拟机编程(高级语言),再用JAVA虚拟机汇编(汇编语言),再编译成机器懂的二进制(机器语言)。 虚拟机始终绕不开、都是虚拟机进程,而且不同公司虚拟机、程序编写软件和习惯不同,必须一行行地汇编、编译、执行,每部分都有头有尾,就相当于把名著改变成若干集电视剧。
方舟编译器的逆天操作。华为这款编译器将上述汇编、编译功能合为一体,成为华为统一标准,本质是创新型的安卓应用编译器。不管是哪家编的程序(高级语言),用华为编译器,可以统一地汇编、编译,统一给安卓系统执行(机器语言)。就相当于把名著改成一部电影,只有一个开头结尾,是一个整体。这么做有一个前提,就是兼容适用于安卓的所有开发语言、汇编表、编译表,在此基础上自己重新汇编、编译,整合成为华为自己的标准。这个工作量和难度是相当惊人的。
过程很省事。华为方舟编译器是底层优化,虽然执行效率还需要实践证明,但是让操作系统全程执行机器码,彻底改变了安卓系统“边解释边执行”的效率问题,高效编译,直接运行,多个来源,一个出口,效率会提升。
性能很优越。余承东的描述中,华为方舟编译器能够将系统操作流畅度提升24%,将系统运行效率提升44%,将各种APP操作流畅度提升60%。
如果还是觉得有点难以理解的话,我在举个例子,通俗易懂。谷歌和苹果分别要建一座共享图书馆,谷歌盖完房子,就甩手不管了,任何人都可以往里面放书。你想怎么往里放书就怎么放,想放什么书就放什么书,所以每次找书都很麻烦,效率很低。苹果盖好房子,还专门制定了规则,必须统一封面,按规定分类摆放。所以找书效率就很高。华为的方舟相当于给谷歌的图书馆设计了一套自动分类摆放系统,你只要把书放到系统上,自动加统一的封皮同时按分类整齐摆放。不知道我这样理解对不对![嘿哈][嘿哈]