如何在Linux中编写字符设备驱动程序?
最佳答案
一个很好的例子是 Linux“softdog”,或软件看门狗定时器。加载时,它将监视一个特殊的写入设备,并根据这些写入的频率采取行动。
它还向您展示了如何实现一个非常有用的基本 ioctl 接口(interface)。
要看的文件是drivers/watchdog/softdog.c
如果您通过示例学习,那是一个很好的起点。其他人建议的基本字符设备(空、随机等)也不错,但没有充分说明您需要如何实现 ioctl() 接口(interface)。
旁注,我相信驱动程序是由 Alan Cox 编写的。如果你想从例子中学习,那么研究顶级维护者的工作绝不是一个坏主意。您可以非常确定该驱动程序还说明了遵守正确的 Linux 标准。
就驱动程序而言(在 Linux 中),字符驱动程序是最容易编写的,也是最有值(value)的,因为您可以看到您的代码运行得非常快。祝你好运,黑客愉快。
关于linux - 我如何学习为 Linux 编写字符设备驱动程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1330284/