《Linux内核修炼之道》精华分享与讨论(6)——分析内核源码如何入手?(上)
作者 佚名技术
来源 Linux系统
浏览
发布时间 2012-04-23
for all USB device drivers that do not fit 54 into any of the above categories. 这个README文件描述了前边使用ls命令列出的那10个文件夹的用途.那么什么是USB Core?Linux内核开发者们,专门写了一些代码,负责实现一些核心的功能,为别的设备驱动程序提供服务,比如申请内存,比如实现一些所有的设备都会需要的公共的函数,并美其名曰USB Core. 时代总在发展,当年胖杨贵妃照样迷死唐明皇,而如今人们欣赏的则是林志玲这样的魔鬼身材.同样,早期的Linux内核,其结构并不是如今天这般有层次感,远不像今天这般错落有致,那时候drivers/usb/这个目录下边放了很多很多文件,USB Core与其他各种设备的驱动程序的代码都堆砌在这里,后来,怎奈世间万千的变幻,总爱把有情的人分两端.于是在drivers/usb/目录下面出来了一个core目录,就专门放一些核心的代码,比如初始化整个USB系统,初始化Root Hub,初始化主机控制器的代码,再后来甚至把主机控制器相关的代码也单独建了一个目录,叫host目录,这是 ![]() ![]() ![]() ![]() 分析Kconfig和Makefile 进入到drivers/usb/core目录,执行命令ls,结果显示如下: Kconfig Makefile buffer.c config.c devices.c devio.c driver.c endpoint.c file.c generic.c hcd-pci.c hcd.c hcd.h hub.c hub.h inode.c message.c notify.c otg_whitelist.h quirks.c sysfs.c urb.c usb.c usb.h 然后执行wc命令,如下所示. # wc –l ./* 148 buffer.c 607 config.c 706 devices.c 1677 devio.c 1569 driver.c 357 endpoint.c 248 file.c 238 generic.c 1759 hcd.c 458 hcd.h 433 hcd-pci.c 3046 hub.c 195 hub.h 758 inode.c 144 Kconfig 21 Makefile 1732 message.c 68 notify.c 112 otg_whitelist.h 161 quirks.c 710 sysfs.c 589 urb.c 984 usb.c 160 usb.h 16880 total drivers/usb/core目录共包括24个文件,16880行代码.core不愧是core,为大家默默的做这么多事.不过这么多文件里不一定都是我们所需要关注的,先拿咱们的地图来看看接下来该怎么走.先看看Kconfig文件,可以看到下面的 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于《Linux内核修炼之道》精华分享与讨论(6)——分析内核源码如何入手?(上)的所有评论