×

Linux的那些事儿之我是Hub

消耗积分:0 | 格式:rar | 大小:2.22 MB | 2017-10-29

分享资料个

  也许设计代码的人和我一样,希望大家能够更多的给 hub 一点关注,所以,关于 hub 的代码在 usb

  core 的目录下面。

  这个故事中使用的是 2.6.22.1 的内核代码,这是此刻我能从 kernel.org 上面获得的最新的内核

  版本.Linux 内核代码目录中, 所有去设备驱动程序有关的代码都在 drivers/目录下面,在这个

  录中的 usb 子目录包含了所有 usb 设备的驱动,而 usb 目录下面又有它自己的子目录,进去看

  下,

  localhost:/usr/src/linux-2.6.22.1/drivers # cd usb/

  localhost:/usr/src/linux-2.6.22.1/drivers/usb # ls

  Kconfig Makefile README atm class core gadget host image misc

  mon serial storage usb-skeleton.c

  注意到每一个目录下面都有一个 Kconfig 文件和一个 Makefile,这很重要。古训有云,再牛 B 的肖

  邦也弹不出老子的忧伤,我想说的是,再牛 B 的黑客如果不看 Makefile 不看 Kconfig,也别想搞清

  楚这里的结构。很多年轻人喜欢研究 usb-skeleton.c,据说这个文件对他们很有启发,所以这里

  偶也友情推荐一下这个文件。有时间有兴趣的可以看一看,其实就是一个简单的 usb 设备驱动程

  序的框架。

  关于 Makefile,在当年我们讲 usb storage 的时候已经讲了一些,这里就不重复了,反反复复讲

  Makefile 是不是太没品了点?要是我室友知道了,肯定会问,是不是男人?不过一个很显然的事实

  摆在这里,在这众多的目录中,我们一眼就能看到有一个叫做core的目录,虽然四六级都是刚刚擦

  边过,可是 core 这个词咱们可没少用。当年,和这个词一起走红的另外两个英语单词是

  simple,naïve.

  好,我们来看core目录。关于usb,有一个很重要的模块,她的名字耐人追寻,usbcore.如果你的电

  脑是装了 Linux,那么你用 lsmod 命令看一下,有一个模块叫做 usbcore.当然,你要是玩嵌入式

  系统的高手,那么也许你的电脑里没有 usb 模块,不过我听说如今玩嵌入式的人也喜欢玩 usb 的,

  因为 usb 设备很合嵌入式的口味。看看我的 lsmod 的输出吧,

Linux那些事儿之我是Hub

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !