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