Chinaunix首页 | 论坛 | 博客
  • 博客访问: 208825
  • 博文数量: 78
  • 博客积分: 3169
  • 博客等级: 中校
  • 技术积分: 805
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-25 13:50
文章分类
文章存档

2012年(1)

2011年(77)

分类: LINUX

2011-03-25 14:28:13

用udev在/dev/下动态生成设备文件,这样用户就不用手工调用mknod了。


利用的kernel API:
   
  class_create : 创建class
  class_destroy : 销毁class
  class_device_create : 创建device
  class_device_destroy : 销毁device


注意,这些API是2.6.13开始有的,在2.6.13之前,应当使用

class_simple_create
class_simple_destroy
class_simple_device_add
class_simple_device_remove 

这一系列,也就是ldd3第14章描述的。 详见:
   


Output:
===========================================
[root@localhost dynamic_dev_node]# insmod ./dummy_dev.ko
[root@localhost dynamic_dev_node]# file /dev/dummy_dev0
/dev/dummy_dev0: character special (250/0)
[root@localhost dynamic_dev_node]# rmmod dummy_dev.ko
[root@localhost dynamic_dev_node]# file /dev/dummy_dev0
/dev/dummy_dev0: ERROR: cannot open `/dev/dummy_dev0' (No such file or directory)


#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#<%

阅读(721) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~