cdev结构和MKDEV和主次设备号

来源:互联网 发布:防火墙拦截udp端口 编辑:程序博客网 时间:2024/06/09 21:07

字符设备在linux内核中用cdev来描述

struct cdev{

struct kobject kobj;

struct module *owner;//所属模块;

const struct file_operations *ops;//文件操作结构,在写驱动时,大部分函数要实现;

struct list_head list;

dev_t dev;//设备号,int类型,高12位为主设备号,低20位为次设备号;

unsigned int count;

};


可以使用如下宏来获得主次设备号:

MAJOR(dev_t dev);

MINOR(dev_t dev);

MKDEV(int major,int minor); //通过主次设备号来生成设备号(dev_t);