《Linux内核修炼之道》精华分享与讨论(6)——分析内核源码如何入手?(上)
作者 佚名技术
来源 Linux系统
浏览
发布时间 2012-04-23
状态.当它收到一个non-idle的信号时,就会被唤醒.节约用电从USB做起.不过这个与主题也没太大关系,相关代码也可以不用关注了.
剩下的还有几项,不过似乎与咱们关系也不大,还是去看看Makefile.
5 usbcore-objs := usb.o hub.o hcd.o urb.o message.o driver.o 6 config.o file.o buffer.o sysfs.o endpoint.o 7 devio.o notify.o generic.o quirks.o 8 9 ifeq ($(CONFIG_PCI),y) 10 usbcore-objs = hcd-pci.o 11 endif 12 13 ifeq ($(CONFIG_USB_DEVICEFS),y) 14 usbcore-objs = inode.o devices.o 15 endif 16 17 obj-$(CONFIG_USB) = usbcore.o 18 19 ifeq ($(CONFIG_USB_DEBUG),y) 20 EXTRA_CFLAGS = -DDEBUG 21 endif Makefile可比Kconfig简略多了,看起来也更亲切点,咱们总是拿的money越多越好,看的代码越少越好.这里之会出现CONFIG_PCI,是通常USB的Root Hub包含在一个PCI设备中.hcd-pci和hcd顾名而思义就知道是说主机控制器的,它们实现了主机控制器公共部分,按协议里的说法它们就是HCDI(HCD的公共接口),host目录下则实现了各种不同的主机控制器. CONFIG_USB_DEVICEFS前面的Kconfig文件里也见到了,关于usbfs的,与咱们的主题无关,inode.c和devices.c两个文件也可以不用管了. 那么我们可以得出结论,为了理解内核对USB子系统的实现,我们需要研究buffer.c、config.c、driver.c、endpoint.c、file.c、generic.c、hcd.c hcd.h、hub.c、message.c、notify.c、otg_whitelist.h、quirks.c、sysfs.c、urb.c 和usb.c文件.这么看来,好像大都需要关注的样子,没有减轻多少压力,不过这里本身就是USB Core部分,是要做很多的事为咱们分忧的,多点也是可以理解的. |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于《Linux内核修炼之道》精华分享与讨论(6)——分析内核源码如何入手?(上)的所有评论