《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/