ARM技术william hill官网
直播中

jf_39110170

1年用户 343经验值
擅长:可编程逻辑 嵌入式技术 EDA/IC设计
私信 关注
[经验]

《Android Runtime源码解析》+原创学习心得首发(2)

接上一篇

今天继续跟大家学习一下,这本书自我看过之后感觉最好最好的,还是第4章的优化算法分析。 就是优化算法框架、常量折叠、指令简化、死代码优化、循环体优化、指令下沉等的内容和硬件平台优化pass信息等   。它通过7个方面把ART的编译优化原理讲得非常清楚。

要知道嵌入式系统的小型os或者是 Linux系统,或者是比较大的PC os这个机制是在里头运行的,这个编译的代码优化的机制是什么?就是它的虚拟机优化代码的原理,你不一点一点的把这个源码你给读懂,学好的话,你就不知道这个里头它都有啥功能啊。它每一个调用的子程序,一步一步到哪,都是有作用的。你如果是读懂这个的话,你自己写一个os也行。现在大型的os,比较主流的都是国外的。给这个源码给读懂之后,你自己都可以写虚拟机了,原理都懂了,你就知道他到底是干啥用的。他到底是咋优化的?他这种优化分析是从算法上的,就比如说它这个常量折叠,它咋给这个常量折叠的?平常咱在任何一种编程语言里声明一个常量,其实它都对应了有这个空间上的浪费,或者是使用,它最终还是落到这个寄存器上来,它最终还是落到这个电子威廉希尔官方网站 当中,如果用了比如说是Java或者是c++写的,调用了好多子程序,调用了好多类,或者是它里边自己声明了常量,或者说库或者类库,它自己里面声明了好多个,咱们本系统上就是用不到的这些常量,它其实它申请之后或者是它存储存之后,还是占用了一个风险,占用了空间。之后你咋让它给代码优化呢?代码优化的方式很简单,就是把相同指针的常量都放在一个寄存器当中,直接使用指针或者是直接使用它的这个地址码调用。直接用这一个寄存器,直接访问他,不用再转来转去了,其实访问的都是一个东西。这就是这本书的好处,他把所有跟这种相关性的理论或者是方法给你提出来了,让大家了解里头到底是咋运作了。

接下来我会继续更新,还希望有更多机会为大家试读,如果是我擅长的方向,可能会讲的更好,比如说 FPGA设计,雷达系统,机器人制造,芯片制造,机器视觉,3D建模,计算机安全,芯片安全,Verilog语言、VHDL语言、数字威廉希尔官方网站 ,SystemVerilog语言、SystemC语言、matlab、C/C++语言,人工智能, 激光雷达,智能算法,硬件加速设计等,希望有这些方向的书籍试读!
谢谢!
2023年5月22日

  • 封面

更多回帖

发帖
×
20
完善资料,
赚取积分