安卓深度探索(卷一)第六章

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓深度探索(卷一)第六章相关的知识,希望对你有一定的参考价值。

Linux系统将每一个驱动都映射成一个文件.这些文件称为设备文件或驱动文件,都保存在/dev目中。这种设计理念使得与Linux驱动进行交互就像与普通文件进行交互一样容易。

由于大多数Linux驱动都有与其对应的设备文件, 因此与Linux驱动交换数据就变成了与

设备文件交换数据。例如,向Linux打印机驱动发送一个打印命令,可以直接使用C语言函数open打开设备文件, 使肝 函数 oc tl 向该驱 的设备文件发送打印命令.

         编写linux驱动的步骤

第一步:建 Linu 驱动骨架 装载和卸载 Linux驱动)

任何类型的 序都有 个基本的结构,例如, 谣言需要有一个入口函数 ma •. inux 驱动程

序也不例外。 Linux 内核在使用驱动时首先需要装载驱动 在装载过程中需要进行 初始

例如,建立设 文件 分配内存地址 等。当 nux 系统退出时需要卸载 inux 驱动,在

卸载的过程中需要 放由 linux 驱动占用的资源

第二步:注册和注销设备文件

以分别使用 misc gi mis dere ter 函数创建和移除设备文件。

第三步:制定与驱动相关的东西‘

MOD ULE_A UTHORMODULE CE SE MOD ULE LI MODUL DES RIPT IO 等宏可以指定与驱动相关的信息。

第四步:指定回调函数

个驱动程序并不 定要指定所有的困调函数.回调函数会通过相关机制进行注册

第五步:编写业务逻辑

 linux驱动的核心部分。光有骨架和回调函数的 Linux 驱动是没有任何意义的。任何一个完整的 Li nux驱动都会做一些与其功能相关的工作.

第六步:编写Makefile文件

第七步:编译Linux驱动程序

第八步:安装和卸载linux驱动

编写一个统计单词个数驱动

  1. 命令建立存放 inux 驱动程序的目录
  2. 建立驱动源代码文件
  3. 编写一个 Makefile 文件
  4. 编写 Linux 驱动程序的骨架部分,Linux驱动的初始化和退出函数
  5. 安装 Linux 驱动insmod word count.k
  6. 查看 word_count 是否成功安装
  7. 卸载 Li nux 驱动
  8. 查看由 Linux 驱动动输出的日志信息

以上是关于安卓深度探索(卷一)第六章的主要内容,如果未能解决你的问题,请参考以下文章

Android深度探索(卷1)HAL与驱动开发 第六章 第一个Linux驱动程序:统计单词个数

Android深度探索第六章

《Android深度探索》第六章心得体会

《Android深度探索》第六章心得体会

Android深度探索——第六章读书笔记及心得

《Android深度探索》第六章心得体会