混杂设备驱动
之前我们编写的是标准字符设备驱动程序,看起来还是有点复杂的样子。linux内核api接口提供了一种混杂设备驱动程序框架,可以大幅度降低编写字符设备驱动程序复杂性。
misc的意思是混合、杂项的,因此 misc 驱动也叫做杂项驱动,misc 驱动其实就是最简单的字符设备驱动。所有的 misc 设备驱动的主设备号都为 10,不同的设备使用不同的从设备号。随着 Linux字符设备
驱动的不断增加,设备号变得越来越紧张,尤其是主设备号,misc 设备驱动就用于解决此问题。misc 设备会自动创建 cdev,不需要像我们以前那样手动创建,因此采用 misc 设备驱动可以简化字符设备驱动的编写。
使用混杂设备驱动程序和之前的方法类似,需要注册一个混杂设备:
int misc_register(struct miscdevice * misc)