字符设备驱动之misc驱动

本文深入探讨了Linux下的misc驱动,对比普通字符驱动,解析了misc驱动的优势,如节省主设备号、使用简便,以及如何利用misc_register和misc_deregister进行注册与注销。文章还提及misc驱动与字符设备驱动的联系,强调了misc在驱动分层设计中的作用。
摘要由CSDN通过智能技术生成

字符设备驱动之misc驱动


  Misc驱动,在LDD3上面基本没讲,但由于其方便,现在使用已经相当广泛。本文首先介绍了普通字符驱动的结构即流程,之后将misc字符驱动与普通字符驱动进行了比较。最后通过源码对misc有更进一步的认识与了解。

如果对字符设备驱动是初次接触,不是特别了解驱动的框架,可以参考 字符设备驱动内核框架小结(一),这篇文章非常清晰、完整的介绍字符设备驱动的一系列知识。

1.      普通字符驱动结构及相应的流程

1.1结构图

 

1.2流程

1.  申请设备号,特别注意:对于一个新的驱动程序,由于使用驱动程序的人并不一定只有我们自己,其可能被广泛使用,随机选定的主设备号可能造成冲突和麻烦。最好不要     随机选择一个当前未使用的设备号,而应该用动态分配机制去获取主设备号。

                   即驱动程序应该使用alloc_chrdev_region而不是register_chrdev_region函数。

2. 完成cdv的注册,调用cdev_add()函数向系统注册字符设备

3.  调用cdev_de()函数从系统注销字符设备。

4. 用unregister_chrdev_region()函数释放原先申请的设备号。

2.misc驱动

Misc设备驱动与一般字符驱动的优点与联系:

优点:

1.   节省主设备号:使用普通字符设备驱动框架,不管该设备的主设备号是静态或者是动态分布的都会

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值