首页 > 代码库 > Linux设备模型

Linux设备模型

硬件拓扑描述中Linux设备模型中四个重要概念中四个:Bus,Class,Device和Device Driver。

1、Bus(总线):

        Linux认为总线是CPU和一个或多个设备之间信息交互的通道。而为了方便设备模型的抽象,所有的设备都应连接到总线上(无论是CPU内部总线、虚拟的总线还是“platform Bus”)(可以参考include/linux/device.h中struct bus_type的注释)。

2、Class(分类):

        在Linux设备模型中,Class的概念非常类似面向对象程序设计中的Class(类),它主要是集合具有相似功能或属性的设备,这样就可以抽象出一套 可以在多个设备之间共用的数据结构和接口函数。因而从属于相同Class的设备的驱动程序,就不再需要重复定义这些公共资源,直接从Class中继承即 可。

3、Device(设备):

        抽象系统中所有的硬件设备,描述它的名字、属性、从属的Bus、从属的Class等信息。

4、Device Driver(驱动):

        Linux设备模型用Driver抽象硬件设备的驱动程序,它包含设备初始化、电源管理相关的接口实现。而Linux内核中的驱动开发,基本都围绕该抽象进行(实现所规定的接口函数)。

Linux设备模型