我创建了一个内核模块并使用下面的代码尝试创建/ 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?
谢谢!
答案 0 :(得分:2)
自动创建设备节点是devfs负责的事情。但是由于担心在内核中实现设备命名策略,它最终被删除了。创建设备节点的现代方法是使用udev,它可以响应sys设备事件并按需创建设备节点。
否则,在静态文件系统上使用mknod手动创建设备节点是另一种选择。