0

我制作了一个内核模块并使用下面的代码尝试制作 /dev/mytimer 条目。

#define DEVICE_NAME "mytimer"
#define MAJOR_NUM 61
static struct class *fc;


fc = class_create(THIS_MODULE, DEVICE_NAME);
device_create(fc, NULL, MAJOR_NUM, "%s", DEVICE_NAME);

我在 /dev 中没有看到我的模块为 /dev/mytimer... 但是当我 时lsmod,我在列表中看到它作为条目 mytimer。

我在哪里以及如何找到我的模块?有没有办法把它放在 /dev 中?

谢谢!

4

1 回答 1

2

devfs 负责自动创建设备节点。然而,由于担心在内核中实现设备命名策略,它最终被删除。创建设备节点的现代方法是使用 udev,它可以响应 sys 设备事件并按需创建设备节点。

否则,您可以选择在静态文件系统上使用 mknod 手动创建设备节点。

于 2010-02-18T13:27:55.053 回答