cdev是linux用来管理字符设备的结构体,其在内核中采用数组结构设计,这样系统中有多少个主设备号就约定了数组大小,此设备号采用链表管理,同一主设备号下可以有多个子设备。
设备即文件,上层应用要访问设备,必须通过文件,cdev中包含file_operations结构体,该结构体就是驱动的文件操作集合。
cdev定义在include/linux/cdev.h中,如下。具体实现在fs/char_dev.c中、
发现没有这个头文件
查询linux内核版本(18.04版本uboot) 4.15
ls -l /dev 查看设备c就是字符设备,b就是块设备,网络设备没有对应的设备文件
编写一个外部模块的字符设备驱动,除了要实现编写一个模块所需要的代码之外,还需要编写作为一个字符设备的代码。