字符设备集中编程模型
Posted Mr_ox
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符设备集中编程模型相关的知识,希望对你有一定的参考价值。
1.重要数据结构
- struct file_operaions
- struct inode
- struct file
2.杂设备驱动模板:struct miscdevice
- 注册:int misc_register(struct miscdevice *misc)
- 注销:int misc_deregister(struct miscdevice *misc)
3.早期标准字符设备驱动模板:
- 注册:int register_chrdev(unsigned int major, const char *name, const struct file_operations *fops)
- 注销:void unregister_chrdev(unsigned int major, const char *name)
4.Linux2.6标准字符设备驱动模型
- 核心数据结构:struct cdev
- 注册:int register_chrdev_region(dev_t first, unsigned int count, char *name)
- 注销:void unregister_chrdev_region(dev_t first, unsigned int count)
5.自动创建设备文件
- 核心数据:struct class:设备类对象
- struct class* class_create
- struct device *device
6.ioctl控制接口
- 定义命令:_IO(type, nr), _IOR(type, nr, datatype), _IOW(type, nr, datatype), _IOWR(type, nr, datatype)
以上是关于字符设备集中编程模型的主要内容,如果未能解决你的问题,请参考以下文章