在Linux内核中,用struct cdev来表示字符设备。
1.获取一个独立的cdev结构:
struct cdev * cdev_alloc (void);
2.初始化已分配的cdev结构
void cdev_init(struct cdev *cdev, struct file_operations *fops);
3.将该结构添加到内核
int cdev_add(struct cdev *dev, dev_t num, unsigned int count);
如果调用成功,则驱动可以工作了。
4.移除字符设备
void cdev_del(struct cdev *dev);
移除后,驱动从内核中被清除,无法继续工作