认识一下杂项设备
程序员文章站
2022-04-11 18:53:49
...
cat /proc/misc 可以查看到杂项设备
杂项设备特点:
- 自动生成节点
- 杂项设备是特殊的一种字符设备、比字符设备代码简单。
- 主设备号为10、次设备号不同。
ps主设备号给设备分类、次设备号区分具体设备
杂项设备结构体描述 include/linux/miscdevice.h
struct miscdevice {
int minor;//次设备号
const char *name;//设备节点名字 ls /dev 可以查看到
const struct file_operations *fops;
//文件操作集,结构体在 include/linux/fs.h
struct list_head list;
struct device *parent;
struct device *this_device;
const struct attribute_group **groups;
const char *nodename;
umode_t mode;
};
**
文件操作集结构体 file_opreations
struct file_operations {
struct module *owner;
ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);
ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);
//~~省略一些不常用的成员函数~~~
} ;
extern int misc_register(struct miscdevice *misc);//注册杂项设备
extern void misc_deregister(struct miscdevice *misc);//注销杂项设备
## 注册杂项设备的流程
1. 填充miscdevice结构体
2. 填充file_operations结构体
3. 注册杂项设备并生成设备节点
上一篇: 网络爬虫-猫眼电影top100