Linux內核模塊


可以藉助一些IDE或者編輯器+相應插件輔助你,比如Visual Studio,Eclipse C/C++,Visual Code + C/C++插件,Vim + 相關插件等等。


內核代碼閱讀是一項非常艱難的事情,主要是代碼量太大,並且模塊間還有一定的耦合。如何閱讀內核代碼,可以從兩方面考慮,一點是藉助有效的工具,比如si或者vim,另外一個是要選擇性閱讀,比如按特性。

工具選擇上,比較好的工具可以有效提高代碼閱讀的效率。因此首先要選好工具。

從代碼閱讀上,以特性為出發點,可以先從網上了解一下特性具體功能,然後再閱讀。另外不建議一下子鑽的太深,適當跳出來,先從大局理解,然後再細節。


ctags打標籤,可以跳轉到函數聲明,也可以使用grep命令查找函數應該如何使用。


grep前提是你知道要搜什麼


我從來都不知道該怎麼教別人讀懂代碼 但是讀log/blame通常是最好的方式

搜索的話 Mainline直接在Linus的github repo裏搜索

https://github.com/torvalds/linux?

github.com圖標

如果是要在特定舊版本里搜索的話

Linux source code: (v4.17.11)?

elixir.bootlin.com

搜索可以定位到Linux 2.6

命名比較common的就加個模塊名字 比如"enabled_fops 模塊名"


在linux下面用vim的插件ctags來查看源碼,可以在源碼中直接跳轉,很方便


推薦閱讀:
相關文章