2

让角色出现在 /dev 中的最佳方式是什么?我有一个调用 register_chrdev 的驱动程序,我在加载模块时看到 /proc/devices 中的条目。但是,我仍然必须在命令行上调用 mknod 才能让它显示在 /dev 中。

有没有一种在模块加载时以编程方式执行此操作的好方法?

4

1 回答 1

1

要自动创建设备节点,例如通过 udev 或 devtmpfs,需要生成随附的 kevent。单独的 register_chrdev 不会这样做。相反,它需要遵循设备/驱动程序模型(另见文档/驱动程序模型/),并使用 kobjects。

与drivers/char/misc.c 比较一个更简单的例子:它使用device_create()。其先决条件是拥有一个结构类,misc.c 也展示了这一点。

于 2010-11-21T12:54:34.170 回答