小结下两个月的“系统异常分析”学习

时间:2021-09-18 07:24:48
到今天为止,第一部分第二章节-“内存管理架构” 的学习基本完成了,简单归纳下内存管理学了哪些东西吧:
1、计算机分级存储架构体系,TLB、Cache、Main-memroy、Disk 在分级存储架构中的角色和与CPU交互基本流程.
2、 32/64位  MMU 页表存储结构、 Translation Table Walk (TTW ) 流程分析.
3、 32/64位  MMU fault 处理流程.
4、linux 内核 vmalloc() 实现原理.
5、32/64位kernel 内存布局.

 
“内存管理架构”部分内容 大致框架已经清楚了,然还是有不少细节地方未能完全理解,这些细节留下记号,待后面扩展深入学习了解,今天和杨老师介绍了下当前的学习进度,杨老师建议我可以开始整理这两个章节的学习资料,准备好学习报告PPT,检验学习是否达到预期,杨老师会亲自过来听报告,压力有点大,有点紧张~~~~,“ARM架构指令集” 和 “内存管理架构”也一起学习近两个月了,这两个月来确实挺辛苦:克服心理恐惧使劲看着50M大小 PDF的英文datasheet,这两个月看的英文文档比我六年来看过所以的英文文档还要多还要生涩;狂补计算机结构课程(我非计算机科班出身没办法)、复习数据结构课程;一遍又一遍的看以前从来没有看过的linux 内核代码,既激动又蛋疼;激动的是很高兴可以让进入一个更深层次的研究学习,蛋疼的是看了一遍又一遍也还是不懂还得继续看..直到看懂为止。因为杨老师强调这两章节是基础中基础,内核调试分析的基础,务必深入理解.

杨老师那天看了我的学习笔记总结后说,像我这种人专注的人其实不多。得到杨老师这样的评价我很高兴,其实我想说是我认为自己基础太差,积累太少。和我相熟的人都多少知道,我是个对学习新东西很有激情的人,或者说是进取心比较强的人。其实我自己内心最清楚,说到底是我对自身知识掌握太少以至于自卑的表现,时刻带有强烈职业危机感,为了要改变这种现状,或许因为这种自身内在原有的自我认识,给了我不断学习不断填充自己的动力,加上如果又刚好是兴趣所致,有时候热情上来了会一发不可收拾,恨不得一天两天把所以的东西都搞清楚弄明白。我学习喜欢注重框架而轻细节,大框架弄明白了,再小细节各个击破,如此不至于让自己陷入深深的漩涡找不到方向。当然最近我也发现了自己学习方法中的一些问题,对一些东西还是需要深入理解,切忌只求大意不求甚解.

我始终认为学习热情是非常重要的东西,是支撑你遇到困难挫折后还坚定走下去的动力,所以学习热情来的时候就得抓紧学习,不能浪费,其实这两个月时间里面,我也有过热情低落,情绪低落的时候,看到5000度页的datasheet,看到一堆的不懂,心里也烦躁有不想去学的念头,每当脑海中有这样念头闪过的时候,我就会去放松一下,或看看其它的书籍,比如历史类书籍(个人一般只看这几类书:技术、管理,历史,其它兴趣不大),或找聊得来的人聊聊和技术无关的事情,等轻松过后热情回来再战。

这两个月的学习,说句实在话,虽辛苦却也倍感充实。已经不知道过了多久没有这样充实的感觉了,现在的我还是对学习充满热情,因为现在才开始,因为我深深的知道,想要进入更深层次的研究学习,必定需要付出更多的努力来跨越这道门槛。

这段时间最大的感受是两点,第一,在技术上不论是深度还是广度,特别是深度上,我司工程师都还远远做得不够,离MTK工程师还差很多级别,不是贬低自己,就目前这深度,想要实现老王的“改covrity 扫出来的google bug”目标,我只能呵呵(当然就算以后有能力改了我也觉得改那东西没啥意义)。第二,我部门(乃至我司)的学习氛围还是不够好,或者说不好听一点就是学习氛围实在太差了。这个其实不是怪我们的工程师懒惰,我想应该有好几方面的原因吧:个人追求、工作太忙没有时间、企业文化、部门氛围带动、工作所需技术层次等这些,我想都是个中的原因吧。这个确实短时间内很难改变。但是其实说到底大家都明白无非是兴趣不够或者是有兴趣但是不够坚定,遇到困难退缩了以至于停滞不前。其实也
不是说一定要进行很深入的学习才算,而是很多人其实已经就是在混日子拿工资不思进取了,很多工作4-5年的老鸟也早失去了学习的动力,开始筹划思考日后的出路考虑转行了,个中原因不外乎“钱途+技术进阶压力+兴趣+意志力”,一方面觉得技术已经到瓶颈无法再提升,特别当学习深入达到一定层次,没高人带完全靠自学成才真得太难了,另外就是年龄的增长,受不了做技术的“折磨”-技术更新很快,需要不断的学习新技术,今天你用的很好的东西,过几年说不定就不用了,你不学就被淘汰了。就像我们最开始的功能机开发,到现在的智能机开发。
关于这个,其实是完全可以理解的,个人兴趣爱好志向不同而选择不同行业很正常。就个人来看,上次看到有篇文章写的就很好,之所以感到没钱途和所在平台和技术深度有关系,本来只需要5年就学完90%的东西,5年过后如果不进阶自然就会感觉到天花板,感到空虚疲惫寂寞了,但是如果把平台拓宽,5年的工作经验或许只是入门而已,这个感觉就完全不一样了,所到底,我现在也算是在拓宽平台,目前而言我司对于复杂一点的KE/NE问题分析基本上是无能为力的,基本山上是要靠MTK支持的,也许就是MTK支持做的太好,大家都不愿意或者不太想去学习,反正有MTK在...如果我能够在这块实现突破,那就是实现了拓宽平台,而且事实也证明我这六年工作经验只算是入门而已。说到底能够真正坚持做技术并且不断深入进阶学习这行的人其实太少了,这个话题如果要扯,还和国内环境有关,国外工程师一人上班可以养活全家还外加房车旅游,国内普通工程师太难了,几乎不可能,深层次的精英工程师才有这样的可能。而其实如果真正坚持进阶学习坚持下去的,回报也会相当不错。关键是看是否能够做到: 消除得偏见,忍得住孤独,耐得住寂寞,坚持到最后 。
 

今天从杨老师那里了解到,我司是MTK第一次试点对外定向技术培训,而我也算是第一个接受定向培训的人,真是倍感荣幸^_^.
两个月过去了只学习完了第1部分的第1,2章节,第一部分还有3个章节要学习,然后还有第二,第三部分学习...
后面学习的路漫漫,为了持续这份热情,给自己说一声:加油~!