我记得在大学读计算机科学专业的时候,我看过一些关于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驱动程序,很难弄清楚?)
总之,我记得读过一篇在线文章(如果我能找到它,我会编辑帖子),讲述如何为一个小型“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驱动程序,很难弄清楚?)