linux內核是linux愛好者的聖地,怎麼能不學呢?最近抽出空來仔細研究學習內核看了幾本書,現在還是一個內核菜鳥。我把我的菜鳥經驗和大家分享一下,高手就不要看了。
學習內核的基礎知識學習內核需要一些基礎知識,幸好這些知識不是太尖端,需要有:彙編、編譯鏈接、C、計算機系統原理。需要的知識不是太多吧。
初學習內核的經驗*閱讀內核的工具cscope
cscope可以和vim或者emacs配合使用。cscope+emacs參考c-aries的《漫步在內核代碼中的emacs》
wine+source Insight
這個是windows下的軟體,在linux也可以運行。安裝很簡單的,我使用挺好。
*內核並不難沒學習內核以前覺得內核很深奧,現在看來就是嚇唬人的,自己把自己嚇住了。學習內核困難之處在於內核太大了,要熟記函數、數據結構之間的關係不是一朝一夕的事情。要成為高手只是時間問題,而和智商高低無關。
*內核實驗可以通過qemu這個虛擬機實驗你編譯的內核。去掉內核中不需要的驅動后編譯內核只需要幾分鐘的時間,qemu可以讓你不啟動機器就使用你自定義的內核。如果配合上bash腳本,那是相當方便的。