arm架构-从入门到精通

文摘   2024-09-24 07:00   安徽  



本文转自 周贺贺,baron,代码改变世界ctw,Arm精选, armv8/armv9,trustzone/tee,secureboot,资深安全架构专家,11年手机安全/SOC底层安全开发经验。擅长trustzone/tee安全产品的设计和开发。

想不想一夜暴富?拥有很多很多钱,买很多很多房,工作也不忙,无压力,不用亲自Coding和Debug,还有大把大把的时间在CSDN上挥霍… 如果真有此想法,那么想想就可以了。本博客/视频不会提供实现上述理想的方法,一点点边都不沾。

本系列文章和视频重在为初学者指点迷津(大佬请绕行),让您少走一点弯路、少踩一点坑,尽快地成为行业的大牛,薪资翻个好几翻,走向人生巅峰…, 无论实现与否,目标还是要有的,只要您坚持不断的学习(一定不是死里卷的那种,而是找对方法,高效率学习的那种),相信在未来即使没有达成下面图片中的目标,但挣点钱/薪资涨一涨/工作的压力减一减还是可以的。

下面为大家奉上一张ARMv8/ARMv9架构入门高效率的学习线路图,一共分为6大阶段吧。同志们,赶快卷起来吧

1、学习ARM基础知识

在学习本节知识时,千万不要把时间和精力放到学汇编上,我认为“学汇编的就是在刷流氓”、“学汇编的都是在摸鱼”,当然我的本意并不是说不让你学习汇编,而是学习汇编不需要花太多精力,简单了解下就可以了,二三十个指令读一读就可以了,不用去背也不用去记。我们常用的汇编指令也就几十个,即使你没有背和记,相信你也看得懂。如果你真要较真,算上变体指令,ARM有数千条指令呢,你背一个我看看?
读完本节文章或视频后你就会发现,整个汇编我浓缩成了一页…很多代码你看不懂,并不是因为你不懂汇编,也不是因为你不懂寄存器,而是因为你不懂架构。注意注意:"你"不懂的不是汇编和寄存器,“你”不懂的是架构。

《ARMv8/ARMv9架构精入门到精通》👈👈👈

2、学习ARM异常(中断)

异常中断不仅仅是整个ARM软硬件架构的核心,也是各类操作系统的灵魂。学好异常中断后,您对待很多专业的技术都可以无师自通了;学好异常中断后,您再去学习其它的知识点,都可以事半功倍。所以我也一直提倡:学安全其实就是在学习架构、学习架构的核心其实学习异常中断。
这一节,要好好学、这一节也简单,学习本节是需要花费很多时间和精力的。

3、学习MMU

在所有硬核的模块中,MMU相对算是一个比较简单的模块,简单只是说知识点简单,相对容易学会,它也在整个ARM架构体系中扮演着重要的角色。所以很多时候,学完MMU,你就能自信爆棚、信心慢慢… 感觉一下子啥都会了。

4、学习Cache

cache真不是你想想的那么简单,也不是网上大多数文章的人云亦云。cache真的很难。在软件中直观的和cache打交道的机会也非常非常非常少,所以通其它各个模块相比,这是最不值得学习的一节,学习本节会花很多精力和时间,对工作的直接帮助也是微乎其微,也就是所谓着性价比偏低。然鹅,您还记得本文开头的目标吗,不是要成为架构师吗,不是要人生巅峰吗?那么不学习cache如何彰显自己的技术牛逼呢?

5、学习Trustzone和安全架构


在Trustzone和安全架构面前,1-4节都是弟弟。学完MMU/Cache你就牛逼了?
一定要注意,学习不要学偏了,本节才是ARM的核心知识。无论是ARM架构、还是ARM的各类IP、还是各类的大系统软件/操作系统软件,你仔细去看一看,哥,百分之多少以上的都是和安全相关的?例如:
1、ARM架构中,哪一个feature和安全没有关系呢?我说ARM架构中30%的都是安全技术不为过吧?
2、再看看IP,arm的gic、arm的SMMU,这两个IP,哪一个不都是50%以上的内容都在介绍安全相关的知识点(注意虚拟化属于安全架构的一部分)?
3、再看大系统或操作系统软件,现在主流的软件架构图,不都是有安全OS吗,现在主流的软件中,不都有ATF吗?
4、所以呢,你再去学习其它知识点的时候,如MMU/Cache,如果他对安全只字不提,那么…

《ARMv8/ARMv9架构精入门到精通》👈👈👈

6、学习ARM架构和各类IP

路漫漫其修远兮,吾将上下而求索。还有太多太多的知识… 加油哈,朋友们!!


推荐

  • ARMv8/ARMv9架构从入门到精通 --博客专栏

  • 《Armv8/Armv9架构从入门到精通 第二期》 --大课程

  • 8天入门ARM架构 --入门课程



ARM研习社
嵌入式软件、C语言、ARM、Linux、内核、驱动、操作系统
 最新文章