标准接口与非标准接口

文章讲述了Linux内核中的设备驱动框架,强调了标准接口如LED设备框架在统一接口和降低开发难度上的作用,同时提及了非标准接口如杂项设备在处理无法分类硬件上的角色,特别是在嵌入式系统中的定制驱动程序情况。
摘要由CSDN通过智能技术生成

标准接口与非标准接口

Linux 内核中为了尽量降低驱动开发者难度以及接口标准化,就出现了设备驱动框架的概念;
Linux 针对各种常见的设备进行分类,譬如 LED 类设备、输入类设备、FrameBuffer 类设备、 video 类设备、 PWM 设备等等,并为每一种类型的设备设计了一套成熟的、标准的、典型的驱动实现的框架, 这个就叫做设备驱动框架。 设备驱动框架为驱动开发和应用层提供了一套统一的接口规范, 譬如对 LED 类设备来说, 内核提供了 LED 设备驱动框架,驱动工程师编写 LED 驱动时,使用 LED 驱动框架来开发自己的 LED 驱动程序,这样做的好处就在于,能够对上层应用层提供统一、标准化的接口、同时又降低了驱动开发工程师的难度。
编写 LED 驱动程序并不仅仅只能使用内核设计的 LED 设备驱动框架,不用内核的 LED 驱动框架也是可以开发出 LED 驱动程序的,但如果你这样写,使用这个驱动程序注册的 LED 那就不是标准设备了, 因为该驱动程序向应用层提供的接口并不是统一、 标准化接口。
除此之外,还有很多硬件外设,尤其是嵌入式系统中所使用到的这些硬件外设,它们可能并不属于 Linux系统所规划的设备分类当中的任何一种设备类型,譬如在 Linux 系统中,有一种设备类型叫杂散/杂项类设备(misc device),大家可以想一想为啥叫杂散类设备,说明这种设备既不属于这种设备类型、又不属于另
一种设备类型,无奈只能把它归为杂项类。
因为一个计算机系统所能够连接、使用的外设实在太多了,不可能每一种外设都能够精准地分类到某一个设备类型中,通常把这些无法进行分类的外设就称为杂项设备,杂项设备驱动程序向应用层提供的接口通常都不是标准化接口、它是一种非标准接口,具体如何去操控这个设备通常只有驱动工程师知道。所以在嵌入式系统中,很多硬件外设的驱动程序都是定制的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机电侠克

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值