《Android深度探索》(卷1)HAL与驱动开发读后感

第6章: 第一个Linux驱动程序统计单词个数

从本章开始将进入最令人激动人心前时刻,开始第一次进行Linux驱动的编写。首先,简单介绍了一下什么是Linux驱动。并通过一个实例来详细介绍编写Linux程序的步骤。

总结如下:

编写Linux驱动的方法:

  第1步:建立 Linux 驱动骨架(装载和卸载 Linux 驱动)

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

  第3步:指定与驱动相关的信息

  第4步:指定回调函数

  第5步:编写业务逻辑

  第6步:编写 Makefile 文件

  第7步:编译 Linux 驱动程序

  第8步:安装和卸载 Linux 驱动

Linux驱动测试的方法多种多样:

1.使用Ubuntu Linux测试Linux驱动

2.在Android模拟器上通过原(Native) C 程序测试Linux驱动

3.使用Android NDK 测试Linux驱动

4.使用Java代码直接操作设备文件来测试Linux 驱动

5.使用开发板测试Linux驱动:

   在开发板上使用可执行程序测试Linux驱动

   在开发板上使用.Android NDK测试Linux驱动

   在开发板上使用Java代码测试Linux驱动

6.将驱动编译进Linux内核进行测试

   第1步:将源文件文件放入Linux内核源代码

   第2步:修改Kconfig文件

   第3步:修改Makefile文件

   第4步:设置.config文件

   第5步:编译Linux内核

使用Eclipse开发和测试Linux驱动程序

第1步:建立C工程

第2步:建立C源代码文件链接

第3步:设置include路径

第4步:编译Linux驱动

安装了 CDT 插件后, Eclipse 不仅可以开发 Java 程序, 也可以开发普通的 C/C++程序。使用Eclipse 开发C/C++程序是一个好主意。 因为可以带来很多好处,如高亮显示代码、 格式化代码、 跟踪代码、Content Assist 列表、调试代码等。

统计单词数的word_count驱动是本书实现的第一个完整的Linux驱动。 虽然word_count驱动的功能并不复杂, 但足以让以前从来接触过Linux驱动的开发人员了解Linux驱动的完整开发过程。本章不仅仅是介绍一个示例, 还介绍了如何使用不同的方法测试Linux驱动。 这些方法主要以平台来区分。 例如, 可以直接使用UbuntuLinux测试Linux驱动。 有很多驱动只要再利用相应的Linux内核编译一遍, 就可以直接安装在Android、Linux等嵌入式系统中。当然, 也可以直 接在Android模拟器、 开发板甚至手机上测试Linux驱动。

对于Linux驱动的开发,关键在于要勤于动手、重在实践。通过动手才能有所提高。

  

 http://www.cnblogs.com/Mr-zsj/

原文地址:https://www.cnblogs.com/Mr-zsj/p/5539484.html