Linux的低层设备驱动程序是如何编写的?

3
我记得在大学读计算机科学专业的时候,我看过一些关于Linux设备驱动程序的书籍。不久之后,我找到了工作,就没有再接触过Linux/嵌入式系统(现在我主要做Java相关的工作)。不过这是我想要深入研究的领域。
总之,我记得读过一篇在线文章(如果我能找到它,我会编辑帖子),讲述如何为一个小型“USB导弹炮塔”编写Linux USB驱动程序,类似于这个: http://www.thinkgeek.com/geektoys/warfare/8a0f/ 文章详细介绍了如何在没有提供驱动程序的情况下编写驱动程序(作者只是在eBay上找到了一个通用的驱动程序...然后通过查看组件等方式来编写驱动程序)。总之,这非常令人惊叹。
我对低级嵌入式系统的工作原理有很好的了解,但那是针对像AVR/PIC微控制器之类的东西,我不知道如何为PC中的普通处理器编写类似的驱动程序。
总之,我的问题是......你如何找出这种东西,我应该在哪里找到这样的信息。
编辑:找到了链接 http://matthias.vallentin.net/blog/2007/04/writing-a-linux-kernel-driver-for-an-unknown-usb-device/ (比我想象的要复杂得多,我没有意识到他是通过反向工程Windows USB驱动程序来编写的......我猜想如果没有窥探Windows驱动程序,很难弄清楚?)

看看这个 - 但它只关注一个层面。http://free-electrons.com/doc/linux-usb.pdf - Peter Teoh
这本书是驱动程序开发的必读之作,就像我在Linux驱动程序开发期间一样,会有很多乐趣;-) - cerkiewny
1个回答

3

这些资源还可用吗?或者我在哪里可以找到类似的东西? - aLoHa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接