关于把知识转化为能力的想法和建议
到目前为止,我们一直都在阅读内核,讨论现有的内核的代码为什么会这样,为什么会那样,之间有什么不同。我想这应该是我们阅读内核的起步,我们首先了解人家是如何编写程序的,如何将操作系统原理实现成一个实实在在的东西的。然而我想,我们阅读内核的目的并不仅仅是为了了解更多的知识,学以致用才是更有价值的。我想阅读内核的人一部分是因为工作的关系,一定要阅读内核,去解决工作中的问题,这是一件十分有针对性的好事情,但是我想,会有相当一部分人,他们现在正在看内核,但是他们眼前没有什么关于内核的工作,这样,看了的东西不知道什么时候才能用上,只不过作为一种知识储备,希望以后可以有机会大展才华。就我的感受来说,在学习的过程当中,如果自己亲手把自己学到的东西在机器上实践一番,就会十分深刻的理解书上说的东西,深刻理解别人为什么那么做,就会理解别人做的东西比自己的想法的精妙之处,就会在做的过程中发现新的问题。有的时候一件事情看起来十分简单,但是等到自己实际做的时候,需要考虑的东西还真多,而这些需要考虑的东西又会十分重要,它会迫使你去深究事物之间联系,就拿操作系统来说,就会迫使我们去考虑操作系统的内部甚至是底层的运行机制,因为我们是在编写代码,哪一个语句没有编写或者编好,都会影响我们的预期结果的,所以我们只有搞清楚运行机制的每一步,才会写出正确的代码。而在看书的时候,是绝对不会考虑的如此周到、细致的,因而就有可能对书中讲的东西的理解程度不深或者欠火候。 所以,我的想法是,能不能开一个版块,可以由高手定期构思一些有代表性、有针对性的小项目,这个项目可以很小,而且对于初学者更要小,小到只实现一个或者两个功能,这个项目用到了操作系统中重要的思想,比如添加一个系统调用什么的,这个系统调用的功能由出题者规定。我想通过这样的组织方式,可以让大家能够从实践中深刻体会所学的知识,而且很难忘掉,又会提高大家的编程能力,又会让大家在编写的过程中找到无穷的乐趣和无穷的成就感,大家也可以针对每一个project发表见解,不同的人就可能有不同的实现方式,这样让大家的编程思路可以不拘一格,殊途同归,就会对内核的理解更上一个档次。我想编程的思想和解决的方法很多都是相通的。比如我们学会了makefile,config.in文件的编写和原理,再加上对模块的理解,不用讲,就会有能力去处理在系统中添加一个新类型的网卡、声卡驱动程序什么的。我想,通过一段时间一系列这样的训练,我们的知识和能力就会覆盖操作系统内核编程的很大一部分,这样,我们再处理一些问题的时候,就会有自己的主见,问的问题就会不停留在表面。我们也看到了,在内核升级和安装版里,很多的问题都是同一种类型,只不过大家没有抓住本质,或者没有亲身动手实践,没有自己的体会造成的。我想对于工作的人来说,这也是一件好事情,因为即时他们也是在做linux内核相关的工作,但是毕竟只是集中在某一方面。所以参加这样的活动,将会扩展他们的视野,也会使他们的思路开阔。这就是我的想法,是我学习过程中的深刻体会,动手,有目标的做东西,价值不可估价,感觉极好,可以起到事半功倍的效果,对大家的兴趣是绝好的刺激。这样心理才不会空虚,这样才会感觉到真正有收获,这样才真正有底气。我们不要向别人说“我学了什么”,最好要说“我能干什么”。
个人想法,欢迎大家讨论,指教。 so great idea! that is why i want to get that kernel project book. anyway, we can think about some kernel projects here. i remebered that i post some kernel projects here, but without many response. good idea! 支持呀!!
但是我们怎么开始这种小的project呢?
有一本kernel project的书叫"linux边学边干...."具体不记得了,不知道有人看过没,感觉如何?是否可以用在这里? 是的,《边干边学——linux内核指导》浙江大学出版社 感觉还可以。不过好像不一定特别适合。可以作为重要的参考. good idea 好! need some good examples as a start. 期待...... It's a great idea ! I hope someone could do something about this . I expect we all can become a linux experts who not only know the knowledgement but also can do some change to kernel or progam for kernel ! we need set up some groups ,and every group make a project .such as fs,network,device driver,boot system and so on .we can copy some code from linux.do you think so. 这的确是一个不错的主意,只盼望能早点实现,可别光说不练啊!! so nice!
hope this advice woulde take practice recently!
I will take part in my interest 'project' .
页:
[1]