加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux 驱动的软件架构

发布时间:2022-10-17 12:35:45 所属栏目:Linux 来源:
导读:  Linux 驱动的软件架构

  Linux 设备驱动非常重视软件的可用性和跨平台能力。

  1. Linux 设备和驱动的分离

  把设备端的信息从驱动里剥离出来,让驱动以某种标准化的方法拿到这些信息。即Linu
  Linux 驱动的软件架构
 
  Linux 设备驱动非常重视软件的可用性和跨平台能力。
 
  1. Linux 设备和驱动的分离
 
  把设备端的信息从驱动里剥离出来,让驱动以某种标准化的方法拿到这些信息。即Linux的总线、设备和驱动模型,总线负责匹配设备和驱动,驱动以标准的途径拿到板级信息。
 
  2. Linux 驱动的分层
 
  如输入子系统,提炼一个Input的核心层,把Linux 接口和整个input事件的汇报机制都实现在这里。
 
  3. Linux 设备驱动的主机、外设驱动分离
 
  主机控制器驱动不关心外设linux 驱动,外设驱动也不关心主机,只是通过核心层的通用API进行数据传输。如果有m个主机控制器、n个外设,分离的结果就是m+n 个驱动,不分离就是m*n个驱动。
 
  platform 设备驱动
 
  Soc 集成了一些独立外设的控制器和挂在SoC内存空间的外设等不依赖与PCI/USB/I2C/SPI等设备总线,Linux 发明了一种虚拟总线,称为platform 总线。
 
  对应的设备叫做platform_device,对应的驱动叫做platform_driver。
 
  platform_device 并不是字符设备、块设备和网络设备等并列概念,而是linux 提供的附加手段,比如Soc 内部集成的I2C、RTC、LCD、看门狗等控制器都归纳为platform_device,他们本身就是字符设备。
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!