http://hi.baidu.com/vandyliu/blog/item/bd5e1f004480f8067aec2ce4.html
Source Insight實質上是一個支持多種開發語言(java,c ,c 等等)的編輯器,只不過由于其查找、定位、彩色顯示等功能的強大,常被我們當成源代碼閱讀工具使用。
作為一個開放源代碼的操作系統,Linux附帶的源代碼庫使得廣大愛好者有了一個廣泛學習、深入鉆研的機會,特別是Linux內核的組織極為復雜,同時,又不能像windows平臺的程序一樣,可以使用集成開發環境通過察看變量和函數,甚至設置斷點、單步運行、調試等手段來弄清楚整個程序的組織結構,使得Linux內核源代碼的閱讀變得尤為困難。
當然Linux下的vim和emacs編輯程序并不是沒有提供變量、函數搜索,彩色顯示程序語句等功能。它們的功能是非常強大的。比如,vim和emacs就各自內嵌了一個標記程序,分別叫做ctag和etag,通過配置這兩個程序,也可以實現功能強大的函數變量搜索功能,但是由于其配置復雜,linux附帶的有關資料也不是很詳細,而且,即使建立好標記庫,要實現代碼彩色顯示功能,仍然需要進一步的配置(在另一片文章,我將會講述如何配置這些功能),同時,對于大多數愛好者來說,可能還不能熟練使用vim和emacs那些功能比較強大的命令和快捷鍵。
為了方便的學習Linux源程序,我們不妨回到我們熟悉的window環境下,也算是“師以長夷以制夷”吧。但是在Window平臺上,使用一些常見的集成開發環境,效果也不是很理想,比如難以將所有的文件加進去,查找速度緩慢,對于非Windows平臺的函數不能彩色顯示。于是筆者通過在互聯網上搜索,終于找到了一個強大的源代碼編輯器,它的卓越性能使得學習Linux內核源代碼的難度大大降低,這便是Source Insight3.0,它是一個Windows平臺下的共享軟件,可以從 http://www.sourceinsight.com/上邊下載30天試用版本。由于Source Insight是一個Windows平臺的應用軟件,所以首先要通過相應手段把Linux系統上的程序源代碼弄到Windows平臺下,這一點可以通過在linux平臺上將/usr/src目錄下的文件拷貝到Windows平臺的分區上,或者從網上光盤直接拷貝文件到Windows平臺的分區來實現。
下面主要講解如何使用Source Insight,考慮到閱讀源程序的愛好者都有相當的軟件使用水平,本文對于一些瑣碎、人所共知的細節略過不提,僅介紹一些主要內容,以便大家能夠很快熟練使用本軟件,減少摸索的過程。
安裝Source Insight并啟動程序,可以進入圖1界面。在工具條上有幾個值得注意的地方,如圖所示,圖中內凹左邊的是工程按鈕,用于顯示工程窗口的情況;右邊的那個按鈕按下去將會顯示一個窗口,里邊提供光標所在的函數體內對其他函數的調用圖,通過點擊該窗體里那些函數就可以進入該函數所在的地方。