1. 定义模块的主设备号、次设备号和设备数量。
  2. 定义设备结构体和设备类指针、设备文件指针。
  3. 实现设备的打开、读、写、ioctl等操作函数。
  4. 定义文件操作函数表。
  5. 在模块初始化函数中,申请设备号、初始化设备结构、添加设备到内核、创建设备类和创建设备文件。
  6. 在模块退出函数中,销毁设备文件、销毁设备类、删除设备、释放设备号。
  7. 定义模块的基本信息,如许可证、作者、版本号和描述等。
#define CDD_MAJOR 200#define CDD_MINOR 0#define CDD_COUNT 1dev_t dev;struct cdev cdev; struct class cdd_class;设备类指针struct device cdd_device;设备文件指针int cdd_openstruct inode inodestruct file filp	printke

原文地址: https://www.cveoy.top/t/topic/hrHo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录