本文共 1020 字,大约阅读时间需要 3 分钟。
我发现我还是喜欢基于物理实体的理解,或许我更适合去做驱动。
就是真正分析到严谨的内存层面上。 像研究进程我就想知道它的实体组成是什么样的,而不是单纯的一个空洞的名词,我觉得这样会理解得更为透彻一些。
让我想起考研的数学里面的公式,会推才是最好的记忆,虽然考研不考你推导,你会用就行了,但是你不会推估计都记不住,我觉得应用层编程的那些API函数也是,是不是可以真正去读读源码看看他们是怎么实现的,这样会更好一些呢。表面上看死记多快,实际是慢。
linux源码分析是不是可以读读,你看看进程的源码是什么样的。
我发现进程描述符,文件流,目录流都是结构体
我刚刚想明白了一个东西,因为我发现Linux c的书和课程都没有深入讲进程,也就是应用层编程,他们都是讲一些函数的调用,我原以为书会讲一下但我发现我买的Linux c的书里面基本没有深入讲,然后我想想驱动的书应该也不会讲,但我又想深入理解一下进程,那莫非是讲Linux内核的书深入讲了进程,然后我去看了下Linux内核方面的书,果然是的,怪不得Linux c的书还有华清的课没有怎深入讲进程,都是讲讲函数调用,而我又觉得单纯函数调用没什么意思,还是想真正深入理解一下。他们没深入讲因为可能是他们教的是应用层的编程。你搜什么进程编程的依旧也不会跟你深入讲进程。
果然,去看linux内核的书就有深入讲的了,这个感觉很棒。
我折腾了好几天的进程终于有点眉目了,是你找的书的对象不对。也怪不得华清不教,你按照应用层编程的思路去学他们的课会轻松些,你只是很多时候想深入理解,自然就到内核层了。所以你也别怪他们不讲这些。
看来但凡有点追求想学点东西的自然就会深入到内核,你单纯就调用一些函数自己也觉得没有意思,内心很空洞的感觉,真的是这样。
编写驱动也是按照已有内核给你的框架来的,似乎和应用层编程一个尿性,知道几个函数接口就可以了。
看来我的直觉是对的,确实需要深入理解。
你真正想学一些东西就不应该只会调用,那样真的感觉没有水平没有深度,就好像当初我说卡尔曼滤波就是调用的一样,真的不行,就会调用,要你何用啊。真正把一个东西啃烂弄透才有意思,真的。
《庖丁解牛linux内核分析》内核的书就有讲fork内部怎么实现的,你看看那些Linux c的书,应用层编程的书是不会讲的,而这些函数内部是怎么实现的也是之前我想理解的。
我个人感觉还是在了解了那些内核原理之后再去看再去用那些接口函数感觉好很多。
转载地址:http://xwoni.baihongyu.com/