代码改变世界

第六章

2016-06-06 00:10  本贪  阅读(141)  评论(0编辑  收藏  举报

本章的主要内容是一个Linux驱动程序,Linux 驱动的工作和访问方式,怎样编写Linux驱动程序以及Linux驱动程序的开发和测试。

一:统计单词个数:

1.准备工作:建立并进入存放linux驱动程序的目录,编写Makefile文件

2. 初始化和退出驱动:安装linux驱动、查看word_count是否成功安装、卸载linux驱动、查看日志信息

3.指定与驱动相关的信息:modinfo word_count.ko查看word_count.ko的信息

4.注册和注销设备文件:定义设备文件,描述设备文件,建立设备文件,移除设备文件

5.指定回调函数:word_count_read和word_count_write函数分别处理从设备文件读数据和向设备文件写数据的操作。两函数中的copy_to_user和copy_from_user函数是将数据从内核空间复制到用户空间或从用户空间复制到内核空间

6.实现统计单词数的算法。

7.编译、安装、卸载linux驱动程序

二:Linux 驱动的工作和访问方式

Linux系统将每一个驱动都映射成一个文件,称之为设备文件或驱动文件。与Linux驱动交换数据相当于与设备文件交换数据。编写Linux驱动最重要的一步就是编写回调函数,否则与设备文件交互的数据将无法得到处理。

三:编写Linux驱动程序

1. 装载和下载Linux驱动

2. 注册和注销设备文件

3. 指定与驱动相关的信息

4. 指定回调函数

5. 编写业务逻辑

6. 编写makefile文件

7. 编译Linux驱动程序

8. 安装和卸载Linux驱动

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

1. 开发Linux驱动程序:建立C工程,建立C 源代码文件链接,设置include路径,编译Linux驱动

2. 测试Linux驱动:导入test_word_count.c文件,设置include路径,建立Target,Build工程,运行测试程序