首页 技术 正文
技术 2022年11月10日
0 收藏 673 点赞 2,106 浏览 838 个字

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

一、首先了解一下:

打印机驱动写入数据:对于打印机驱动来说,需要接收这些被写入的数据,并将它们通过PC的并口、USB等端口发送给打印机。要实现这一过程就需要Linux驱动可以响应应用程序传递过来的数据。这就是Linux驱动的事件,虽然在C语言里没有事件的概念,但却有与事件类似的概念,这就是回调(callback)函数。因此,编写Linux驱动最重要的一步就是编写回调函数,否则与设备文件交互的数据将无法得到处理。图6-1是应用软件、设备文件、驱动程序、硬件之间的关系。

二、编写Linux驱动程序的步骤

inux驱动程序与其他类型的Linux程序一样,也有自己的规则。对于刚开始接触Linux驱动开发的读者可能对如何开发一个LInux驱动程序还不是太了解。为了解决这部分读者的困惑,本节给出了编写一个基本的Linux驱动的一般步骤。读者可以按着这些步骤循序渐进地学习Linux驱动开发。

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

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

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

第4步:指定回调函数

第5步:编写业务逻辑

第6步:编写Makefile文件

第7步:编译Linux驱动程序

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

三、编写Linux驱动程序前的准备工作

首先使用下面的命令建立存放Linux驱动程序的目录。

然后使用下面的命令建立驱动源代码文件(word_count.c)

最后编写一个Makefile文件,实际上这是6.2节介绍的编写Linux驱动程序的第6步。

四、编写Linux驱动程序的骨架

现在编写Linux驱动程序的骨架部分,也就是前面介绍的第1步。骨架部分主要是Linux驱动的初始化和退出函数。

ast;mso-hansi-theme-font: minor-fareast’>3配置有线网络  由于Android本质是Linux系统,因此可以使用Linux命令ifconfig设置IP掩码和子网掩码,用rout命令设置网关

上一篇: 获取Ip地址
下一篇: css的学习
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,122
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,594
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,439
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,210
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,846
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,931