海思SDK驱动部分精要.docxVIP

  • 4
  • 0
  • 约8.99千字
  • 约 10页
  • 2017-06-15 发布于湖北
  • 举报
海思SDK驱动部分精要

1,linux驱动程序介绍 1.1 linux驱动程序在系统中的角色 Linux分为用户态和内核态,一般应用程序是在用户态执行,他们通过一系列的系统调用同内核态进行交互。驱动程序是内核与硬件的接口,它把系统调用映射到具体设备对于实际硬件的特定操作上,关系如下图所 通过这种方法,应用程序就可以像操作普通文件一样操作硬件设备,用户程序只需要关心这个抽象出来的文件,而一切同硬件打交道的工作都交给了驱动程序。 1.2 linux驱动的类型 linux系统将设备分为3类:字符设备、块设备、网络设备,摄像机常用的外围设备(如I2C,串口,SPI,GPIO,PWM等)均属于字符设备,tf卡驱动属于块设备,网卡相关驱动属于网络设备。 字符设备与块设备的区别:1、字符设备是面向流的,最小访问单位是字节;而块设备是面向块的,最小访问单位是512字节或2的更高次幂。2、字符设备只能顺序按字节访问,而块设备可随机访问。3、块设备上可容纳文件系统,访问形式上,字符设备通过设备节点访问,而块设备虽然也可通过设备节点访问,但一般是通过文件系统来访问数据的。 而网络设备没有设备节点,是因为网络设备是面向报文的,很难实现相关read、write等文件读写函数。所以驱动的实现也与字符设备和块设备不同。 1.3 linux驱动的一些重要概念 设备号  HYPERLINK /base/linux \o Linux知识

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档