华为
华为的困境 2021年对于华为而言无疑是十分艰难的一年,芯片和系统先后受到限制,消费者业务不得不从扩张状态进入到防守阶段。但是处于困境的华为并没有自暴自弃,在硬件受阻的前提之下开始试图从软件领域进行突破。
鸿蒙装机量突破3.2亿
在安卓受限,谷歌GMS无法使用的前提下,华为选择了
鸿蒙系统作为自己的突破口,不但总装机量超过3.2亿台,同时还将万物互联从理念化为了现实,将所有
鸿蒙设备融为一体,实现了差异化竞争。
早在2009年华为启动5G基础技术研究之时就同时创建了编译器团队;2013年华为推出自主研发面向基站领域的编译器HCC,同时提出了编译器框架构想;2022年2月8日华为终于将传闻已久的方舟编译器开源并推出了1.0版本。历经13年的努力华为终于将自己在编译器领域积累的技术展现了出来。
方舟编译器
方舟编译器的野心 虽然鸿蒙取得了突破,但仅有系统还不够,应用数量的差距才是决定一个系统能否成功的关键。昔日微软也曾经力推自己的手机操作系统Windows Phone系统,但是因为数量的不足最终还是败下阵来。那么
华为鸿蒙如何避免重蹈覆辙?
方舟编译器
答案就是方舟编译器。对Java有所了解的读者都应该知道虚拟机机制,而基于JAVA和虚拟机的安卓系统必然需要在虚拟机中来完成编译和解释,这种虚拟机 编译器 解释器的方式不仅占用硬件资源,同时也并不能最大程度发挥软件的性能。同时JAVA的垃圾回收机制会根据内存使用情况间歇性对非使用状态的线程进行关闭并释放内存,这也是造成卡顿的重要原因。
方舟编译器
而华为方舟编译器的目的就是去除掉虚拟机机制,将程序直接编译为程序可以识别的二进制码直接发送给硬件,从而减少中间环节的性能损耗,达到提升性能和运行速度的目的。方舟编译器不但干掉了传统意义上的虚拟机,同时还实现了Java/C/C 等混合代码直接编译为二进制机械码来运行,减少了额外的开销,使得鸿蒙系统的性能得到了显著的提高。
方舟编译器 1.0版本
目前在Gitee上已经能够看到完整的方舟编译器代码,包含前端、中端、后端等。通过这种行动华为不但洗脱了自己关于“安卓换皮”的谣言,同时也展露了自己更进一步的野心,那就是彻底颠覆安卓。
方舟编译器
通过将源代码直接编译为二进制机器码,方舟编译器使得开发者的为安卓编写的源代码同样可以在鸿蒙上运行,如此一来就让已有的安卓生态也成为了鸿蒙生态的一部分。同时通过砍掉虚拟机的开销,部分应用在鸿蒙上的表现甚至可以超过安卓。
不仅仅是安卓,下一步iPhone上的应用也同样可能为鸿蒙所用——通过将objective-c/swift编写的iOS应用编译成二进制的机器码,这些程序也同样可以在鸿蒙上应用。这种行为实际上也打破了iOS对于应用的绝对垄断,开发者可以在不需要增加工作量的前提下就将系统迁移到鸿蒙之上。从此足可以看到鸿蒙的野心之大——将安卓和iOS的生态转化为鸿蒙生态的一部分。
方舟编译器
离技术成熟还有一定距离 当然理想很丰满,事实却并不能尽如人意。iOS上拥有大量独立的库,开发者的应用或许可以很简单地完成迁移,但是鸿蒙如果真的想要让这些应用运行起来,那么大量的苹果或第三方的库也需要进行重写,虽然不能说是不可能的任务,但是工作量的级别将十分巨大。
同时砍掉虚拟机虽然可以带来性能的提升,但同时也会失去跨平台以及安全性能下降(运行在虚拟机中的恶意代码不会感染整个系统)的代价。但无论如何华为已经找到了一条切实可行的道路,虽然这一条路并没有那么容易走,但这也是作为追赶者必须要付出的代价。
大家看好鸿蒙系统的发展吗?欢迎留言讨论
本文由头条号区块前沿科技首发,未经授权请勿转载
花粉社群VIP加油站
恭喜你,领取到一张面值 0 元的优惠券
只有购买全集内容 0.00 元,才可抵扣使用。
有效期截止于:2020-12-12 23:59
是否立即使用?