荣耀老熊科普方舟编译器及 EROFS 超级文件系统
来源:IT之家 作者:沧海
今日晚间,荣耀老熊发文科普方舟编译器及 EROFS 超级文件系统,我们来看一下吧。
以下为荣耀老熊科普方舟编译器及 EROFS 超级文件系统:
编译器到底是干嘛的?
首先讲讲编译器是什么东西吧?其实绝大多数用户都没机会亲眼看到或者亲手摸到这个东西。程序员们在写好应用的代码之后,在变成你 手机 上安装的应用之前还差最后一步,就是编译。他们会把代码导入编译器中,经过电脑一番不明觉厉的操作之后,就生成了可以直接运行的应用。打个比方,编译就像画龙点睛一样,必须点了睛之后龙才能活过来、飞起来。
从根儿上提升系统流畅
电脑上的应用,绝大多数都是整个编译好了给用户使用,叫静态编译。而手机应用有些特殊,有一部分代码需要在手机上现编现用,这叫动态编译。编译这个操作是非常吃系统资源的,程序员们是用电脑编译手机应用,那自然要快一些,可是动态编译是用手机的 CPU 在做编译啊,不造成卡顿才怪。打个比方,这就像木匠在干活的时候,还要一边给自己制造刨子、凿子、锯子这些工具,效率能高得了吗?
这次方舟编译器推出之后,我认为将会从根儿上大大提升系统流畅度。方舟编译器采用了静态编译的方式,程序员用它编译出的应用,装在手机上直接就可以运行了,把手机的 CPU 完全解放出来干该干的事,不会再浪费手机的性能去做编译的操作。我们测试过,使用方舟编译器后,系统应用执行效率提升 29%,操作流畅度提升 13%,系统响应提升 32%。以微博极速版为例,在应用方舟编译器之后,刷微博的时候图片加载特别快,几乎感觉不到加载的过程,体验非常流畅。
除了代码编译,方舟编译器还在运行状态下引入了高效的环回收机制。这些年来大家都知道,手机应用越来越丰富,功能越来越强大,但是对内存的要求也越来越大,终端产品的内存也越来越大,但内存的利用率却并不高。而方舟编译器允许有选择的智能回收某个应用的内存占用,这对传统的环回收算法是一个非常棒的改进,大大提高了内存利用率。
提升流畅度,我们不只有 " 方舟 "
提升系统流畅度,还有 EROFS 超级文件系统,可以压缩系统空间占用,提升随机读写速度。EROFS 超级文件系统的诞生也是走过很长一段路的,我们使用的操作系统是基于 Linux 开发,所以最早使用的是 Linux 的标准文件系统 Ext4,Ext4 的存储结构并不适用于手机的闪存。2016 年,华为推出了优化后的 F2FS 文件系统,在用户分区内替代了传统的 EXT4 文件系统,提升了文件读写的流畅度,但运行操作系统只读文件的系统分区暂时还是 EXT4。2018 年,华为在行业内率先采用了 EROFS 超级文件系统,这是针对 Linux 只读文件的文件系统。在专利压缩算法的加持下,经过我们的实测,能够使得系统分区随机读取性能平均提升 20%,并减少 14% 系统空间占用。