1、混杂设备概念:
在Linux系统中,存在一类字符设备,它们拥有相同的主设备号(10),但次设备号不同,我们称这类设备为混杂设备(miscdevice)。所有的混杂设备形成一个链表,对设备访问时内核根据次设备号查找到相应的混杂设备。
2、混杂设备描述:
Linux中使用struct miscdevice来描述一个混杂设备:
注意:minor是这个混杂设备的次设备号,若由系统自动配置,则可以设置为MISC_DYNAMIC_MINOR,name是设备名。
3、混杂设备注册:
Linux中使用misc_register函数来注册一个混杂设备驱动。
int misc_register(struct miscdevice *misc)
4、混杂设备驱动的思维导图: