史上最牛linux內(nèi)核學(xué)習(xí)方法論

史上最牛linux內(nèi)核學(xué)習(xí)方法論

ID:23607376

大小:78.50 KB

頁(yè)數(shù):21頁(yè)

時(shí)間:2018-11-09

史上最牛linux內(nèi)核學(xué)習(xí)方法論_第1頁(yè)
史上最牛linux內(nèi)核學(xué)習(xí)方法論_第2頁(yè)
史上最牛linux內(nèi)核學(xué)習(xí)方法論_第3頁(yè)
史上最牛linux內(nèi)核學(xué)習(xí)方法論_第4頁(yè)
史上最牛linux內(nèi)核學(xué)習(xí)方法論_第5頁(yè)
資源描述:

《史上最牛linux內(nèi)核學(xué)習(xí)方法論》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。

1、毫不夸張地說(shuō),Kconfig和Makefile是我們?yōu)g覽內(nèi)核代碼時(shí)最為依仗的兩個(gè)文件?;旧?,Linux內(nèi)核中每一個(gè)目錄下邊都會(huì)有一個(gè)Kconfig文件和一個(gè)Makefile文件。對(duì)于一個(gè)希望能夠在Linux內(nèi)核的汪洋代碼里看到一絲曙光的人來(lái)說(shuō),將它們放在怎么重要的地位都不過(guò)分?! ∥覀?nèi)ハ愀?,通過(guò)海關(guān)的時(shí)候,總會(huì)有免費(fèi)的地圖和各種指南拿,有了它們?cè)谑掷镂覀儾挪恢劣跓o(wú)頭蒼蠅般迷惘的行走在陌生的街道上。即使在內(nèi)地出去旅游的時(shí)候一般來(lái)說(shuō)也總是會(huì)首先找份地圖,當(dāng)然了,這時(shí)就是要去買(mǎi)了,拿是拿不到的,不同的地方有不同的特色,只不過(guò)有的特色是服務(wù),有的特色是索取?! config和Makefil

2、e就是LinuxKernel迷宮里的地圖。地圖引導(dǎo)我們?nèi)フJ(rèn)識(shí)一個(gè)城市,而Kconfig和Makefile則可以讓我們了解一個(gè)Kernel目錄下面的結(jié)構(gòu)。我們每次瀏覽kernel尋找屬于自己的那一段代碼時(shí),都應(yīng)該首先看看目錄下的這兩個(gè)文件?! ±肒config和Makefile尋找目標(biāo)代碼  就像利用地圖尋找目的地一樣,我們需要利用Kconfig和Makefile來(lái)尋找所要研究的目標(biāo)代碼。比如我們打算研究U盤(pán)驅(qū)動(dòng)的實(shí)現(xiàn),因?yàn)閁盤(pán)是一種storage設(shè)備,所以我們應(yīng)該先進(jìn)入到drivers/usb/storage/目錄。但是該目錄下的文件很多,那么究竟哪些文件才是我們需要關(guān)注的?這時(shí)就有必

3、要先去閱讀Kconfig和Makefile文件?! ?duì)于Kconfig文件,我們可以看到下面的選項(xiàng)。configUSB_STORAGE_DATAFABbool"DatafabCompactFlashReadersupport(EXPERIMENTAL)"dependsonUSB_STORAGE&&EXPERIMENTALhelpSupportforcertainDatafabCompactFlashreaders.Datafabhasawebpageat.  顯然,這個(gè)選項(xiàng)和我們的目的沒(méi)有關(guān)系。首先它專(zhuān)門(mén)針對(duì)Datafab公司的產(chǎn)品

4、,其次雖然CompactFlashreader是一種flash設(shè)備,但顯然不是U盤(pán)。因?yàn)閐rivers/usb/storage目錄下的代碼是針對(duì)usbmassstorage這一類(lèi)設(shè)備,而不是針對(duì)某一種特定的設(shè)備。U盤(pán)只是usbmassstorage設(shè)備中的一種。再比如:configUSB_STORAGE_SDDR55bool"SanDiskSDDR-55SmartMediasupport(EXPERIMENTAL)"dependsonUSB_STORAGE&&EXPERIMENTALhelpSayYheretoincludeadditionalcodetosupporttheSandis

5、kSDDR-55SmartMediareaderintheUSBMassStoragedriver.  很顯然這個(gè)選項(xiàng)是有關(guān)SanDisk產(chǎn)品的,并且針對(duì)的是SM卡,同樣不是U盤(pán),所以我們也不需要去關(guān)注?! ∈聦?shí)上,很容易確定,只有選項(xiàng)CONFIG_USB_STORAGE才是我們真正需要關(guān)注的。9configUSB_STORAGE10tristate"USBMassStoragesupport"11dependsonUSB&&SCSI12---help---13SayYhereifyouwanttoconnectUSBmassstoragedevicestoyour14computer'

6、sUSBport.ThisisthedriveryouneedforUSB15floppydrives,USBharddisks,USBtapedrives,USBCD-ROMs,16USBflashdevices,andmemorysticks,alongwith17similardevices.Thisdrivermayalsobeusedforsomecameras18andcardreaders.1920Thisoptiondependson'SCSI'supportbeingenabled,butyou21probablyalsoneed'SCSIdevicesupport:S

7、CSIdisksupport'22(BLK_DEV_SD)formostUSBstoragedevices.2324Tocompilethisdriverasamodule,chooseMhere:the25modulewillbecalledusb-storage.  接下來(lái)閱讀Makefile文件。0#1#MakefilefortheUSBMassStoragedevicedrivers.2#3#15Aug2000,Christ

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。