date: 2014-08-26 17:09
1 这是《情景分析》的读书笔记
2013年9月,偶然的机会看到了《Linux内核源代码情景分析》(后文称《情景分析》)。对一个内核菜鸟来说,阅读此书就像郭靖初读《九阴真经》一样难懂、难受。出于对这本书的敬仰我也只好不求甚解硬着头皮读了几章。虽然是不求甚解,但本书作者如庖丁解牛般对源码的剖析,其神乎其技给我留下了深刻的印象。11月,我与刚接触一年的linux分手,去搞逆向工程了,此书就被搁置了。此后,因为同事的一个关于linux页式存储管理与intel 段寄存器关系的问题,让我重拾此书(准确的说,只是重新看了第二章的部分内容)。这一次我反思自己:为什么明明看了相关的内容,却没能准确的掌握相关知识,说不出个来龙去脉来?我恬不知耻的认为,对初学者来说,《情景分析》中的图不够多。跟着作者的思路往下读,一个主题读完,脑袋里塞满满的(可能是我脑容量不够大),确有收获,但还有些关节没打通,就好像各个招式已经学会,但想把招式连起来发个“大招”却无从着力。我是随着作者的思路陷入具体的细节之中而无法自拔了,如果能有一张框图将整个过程连起来就好了。于是,再重读部分章节时,我开始绘制流程图,并记录一些笔记。
2 这还是《情景分析》的读书笔记
在写读书笔记之初,我有点不知天高地厚的想写成新版内核的源码分析。本书的源码是2.4版本的,新版的内核已经到了3.14版,代码经过几轮重构并新增了许多功能,的确是困难重重,于是只好知难而退了。 无法写成新版内核的源码分析,那就退而求其次,我希望我的读书笔记至少不是抄书式的读书笔记,而是充满我个人的想法。我甚至天真的想:内核不也是个大的软件项目吗?如果把这个软件项目的需求明确、细分,针对每一个细分的需求,我们也能想到解决方案。针对每一个主题,先列出其内在需求,然后设计出其实现方案,这样分析内核源码更有趣。
悲剧的是,我不得不承认自己能力低下,这个退而其次我也办不到,只好退而又退其次了,在搞成抄书式的读书笔记之前,加上我自己当时的疑惑与思考。
现在的工作已经不跟内核打交道了,所以读书笔记也只坚持了三章。记录在这里,如果将来有需要,希望能从这里找回当时的一些感觉。