日期:2014-05-16  浏览次数:20907 次

怎么读《深入理解linux内核》和《情景分析》
请教高人们都是怎么读的《深入理解linux内核》和《情景分析》,花了多长时间?我一般喜欢给自己高压力,自己计划是一天读懂《深入理解linux内核》中的一章,二十来天读完整本书,可是刚进行了五六天,我就发现,我没这个能力一天读懂一章。看来操作系统,就是要拉长了打,速战速决是不大可能的。之前学C++,设计模式,数据结构时都是速战速决的。
有同感的人回帖。

------解决方案--------------------
没有基础看着两本书是相当吃力的!
------解决方案--------------------
得有相当的软硬件知识积累才行
要是能随便一天读懂一章,那这个世界就没什么值得积累的技术了

我的建议是先看 Robert Love的Linux Kernel Develop 2nd,作者说那是《深入理解linux内核》的导读,等到你看LKD都很轻松的时候就好看经典了

另外,我觉得先学好驱动开发,再分析内核才是正途。做驱动需要经常用到内核中的数据结构和函数(相当于内核api),难度却比分析内核要低。等到驱动练得熟练了,等于内核的结构有了大致把握,然后就可以分析内核函数的具体实现了,也方便做实验验证。

我也是初学者,目前只是看LKD比较轻松的阶段
------解决方案--------------------
有误
是译者建议先看《深入理解linux内核》再看UND和LDD

驱动难度却比分析内核要低
--------
仅考虑软件部分也许还行,但实际跟硬件交互总有复杂的问题需要解决
------解决方案--------------------
是译者建议先看Linux Kernel Develop 2nd 再看《深入理解linux内核》和LDD 

晚上有点不清醒
------解决方案--------------------
我是跳着看过..
------解决方案--------------------
不能太急 :)
------解决方案--------------------
都看不懂~
------解决方案--------------------
其实 Robert Love 的Linux Kernel Develop 2nd也比较难懂。

这几本书的中文版都是陈丽君翻译的,她自己写的一本《Linux操作系统原理与应用》比较易懂,可以做这几本书的铺垫!
------解决方案--------------------
建议:
lkd+ulk+源代码,
情景分析中讲的太细,没有ULK的基础很容易一猛子扎进去出不来,迷在代码中
建议lkd先看一遍,这个半月就差不多了
然后ULK结合源码,这可是个慢功夫,一般ULK看一半就感觉前边看的什么都没有了
这时候在看lkd中对应的ULK已经看过的章节
等ULK中重要的章节基本看完,再分块看
例如:
进程管理+中断,内存管理等几块
情景分析的话等ULK看了1-2遍(随时结合代码),需要深入的章节而你自己看源码又有些地方不理解,可以参考情景分析相应的章节,没必要全部看完

另外,推荐一本新书《Professional Linux Kernel Architecture》,个人认为这本比ULK写的更好
ULK更多是教你内核里有什么,而这本书教的是内核有什么,为什么这样。让你知其然又知其所以然。当然虽然本书很厚,1300多页,由于涉及太多,深度的话跟ULK差不多,甚至稍微浅一点。

本人的一点感想,不一定适合LZ,LZ看情况而定吧

------解决方案--------------------
个人感觉《深入理解linux内核》也就是ULK没有个一年功夫就别想读懂,这东西欲速则不达。
------解决方案--------------------
看了好几本, 没有一本看完的
------解决方案--------------------
楼主心态有问题,速战速决要分情况滴

------解决方案--------------------
其实 Robert Love 的Linux Kernel Develop 2nd也比较难懂。 

这个我以前听说是比较入门的,但是我看了两遍后还是希里糊涂的。
------解决方案--------------------
探讨
引用:
个人感觉《深入理解linux内核》也就是ULK没有个一年功夫就别想读懂,这东西欲速则不达。


一年!!!!!!!!!!!!!你确定吗?

------解决方案--------------------
探讨
主要是我没这么长的时间。必须得快点了。我半年内要有所小成,不然就别想找工作了。

------解决方案--------------------
探讨
主要是我没这么长的时间。必须得快点了。我半年内要有所小成,不然就别想找工作了。

------解决方案--------------------
基础哦,那就要求C\C++精通了,不过嵌入式职位一般都招有好几年工作经验的人。
------解决方案--------------------
探讨
我是大四。看《深入理解linux内核》是为了学习嵌入式linux的移植,驱动编写打基础。也是为了研究生时读代码打基础。
高人有何建议?请赐教?

------解决方案--------------------