我在哪里学习编写设备驱动程序

我不知道怎么写这个更简单。 我有几本关于Linux设备驱动程序的书籍,但我需要一些帮助才能开始。

既然你在askubuntu问这里,我只是假设你打算为Linux内核开发。 你没有具体提到任何东西,所以这里有一些提示:

概念:

设备驱动程序是一种程序,用于控制连接到计算机的特定类型的设备。

这意味着设备驱动程序充当硬件设备与使用它的应用程序或操作系统之间的转换器。


Requisits:

为了开发Linux设备驱动程序,有必要了解以下内容:

  • C编程。 需要对C编程有一些深入的了解,比如指针使用,位操作函数等。

  • 微处理器编程。 有必要了解微型计算机如何在内部工作:内存寻址,中断等。汇编程序员应该熟悉所有这些概念。

  • 最后但并非最不重要的是,Linux内核就是你要做的所有事情之间的关系。


资源,链接和帮助:

  • 在Linux中编写设备驱动程序:一个简短的教程 ( 知道你在做什么

  • Linux Kernel 2.6编程指南 ( 了解后台

  • Linux设备驱动程序,第三版 ( PDF

  • UbuntuDevelopment ( 在这里你可能会得到其他Ubuntu开发人员的帮助


实际例子:

一步一步的操作方法,目标是制作简单的USB灯设备及其Linux驱动程序:

编写简单的USB驱动程序| Linux Journal

为您的Linux机箱提供从房间对面可以看到的彩色灯光,并学习如何为下一个要连接的硬件编写简单的驱动程序。