史上最牛linux内核学习方法论

史上最牛linux内核学习方法论

ID:23607376

大小:78.50 KB

页数:21页

时间:2018-11-09

史上最牛linux内核学习方法论_第1页
史上最牛linux内核学习方法论_第2页
史上最牛linux内核学习方法论_第3页
史上最牛linux内核学习方法论_第4页
史上最牛linux内核学习方法论_第5页
资源描述:

《史上最牛linux内核学习方法论》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、毫不夸张地说,Kconfig和Makefile是我们浏览内核代码时最为依仗的两个文件。基本上,Linux内核中每一个目录下边都会有一个Kconfig文件和一个Makefile文件。对于一个希望能够在Linux内核的汪洋代码里看到一丝曙光的人来说,将它们放在怎么重要的地位都不过分。  我们去香港,通过海关的时候,总会有免费的地图和各种指南拿,有了它们在手里我们才不至于无头苍蝇般迷惘的行走在陌生的街道上。即使在内地出去旅游的时候一般来说也总是会首先找份地图,当然了,这时就是要去买了,拿是拿不到的,不同的地方有不同的特色,只不过有的特色是服务,有的特色是索取。  Kconfig和Makefil

2、e就是LinuxKernel迷宫里的地图。地图引导我们去认识一个城市,而Kconfig和Makefile则可以让我们了解一个Kernel目录下面的结构。我们每次浏览kernel寻找属于自己的那一段代码时,都应该首先看看目录下的这两个文件。  利用Kconfig和Makefile寻找目标代码  就像利用地图寻找目的地一样,我们需要利用Kconfig和Makefile来寻找所要研究的目标代码。比如我们打算研究U盘驱动的实现,因为U盘是一种storage设备,所以我们应该先进入到drivers/usb/storage/目录。但是该目录下的文件很多,那么究竟哪些文件才是我们需要关注的?这时就有必

3、要先去阅读Kconfig和Makefile文件。  对于Kconfig文件,我们可以看到下面的选项。configUSB_STORAGE_DATAFABbool"DatafabCompactFlashReadersupport(EXPERIMENTAL)"dependsonUSB_STORAGE&&EXPERIMENTALhelpSupportforcertainDatafabCompactFlashreaders.Datafabhasawebpageat.  显然,这个选项和我们的目的没有关系。首先它专门针对Datafab公司的产品

4、,其次虽然CompactFlashreader是一种flash设备,但显然不是U盘。因为drivers/usb/storage目录下的代码是针对usbmassstorage这一类设备,而不是针对某一种特定的设备。U盘只是usbmassstorage设备中的一种。再比如:configUSB_STORAGE_SDDR55bool"SanDiskSDDR-55SmartMediasupport(EXPERIMENTAL)"dependsonUSB_STORAGE&&EXPERIMENTALhelpSayYheretoincludeadditionalcodetosupporttheSandis

5、kSDDR-55SmartMediareaderintheUSBMassStoragedriver.  很显然这个选项是有关SanDisk产品的,并且针对的是SM卡,同样不是U盘,所以我们也不需要去关注。  事实上,很容易确定,只有选项CONFIG_USB_STORAGE才是我们真正需要关注的。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.  接下来阅读Makefile文件。0#1#MakefilefortheUSBMassStoragedevicedrivers.2#3#15Aug2000,Christ

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。