实验四报告 20135209潘恒 20135204郝智宇 |
您所在的位置:网站首页 › 内核驱动设计入门-模块方式驱动实验 › 实验四报告 20135209潘恒 20135204郝智宇 |
北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1352 姓名: 潘恒 郝智宇 学号:20135209 20135204 成绩: 指导教师:娄嘉鹏 实验日期:2015.11.17 实验密级: 预习程度: 实验时间:15:30~17:30 仪器组次:04,09 必修/选修:必修 实验序号:04 实验名称: 5.1内核驱动设计入门-----模块方式驱动实验 实验目的与要求: 1.学习在Linux下进行驱动设计的原理; 2.掌握使用模块方式进行驱动开发调试的过程。
实验仪器: 名称 型号 数量 嵌入式实验平台 UP-TECH S2410/P270 1 PC机
1 实验内容、步骤与体会: 一、实验内容
在PC机上编写简单的虚拟硬件驱动程序并进行调试,实验驱动的各个接口函数的实现,分析并理解驱动与应用程序的交互过程。
二、实验步骤 阅读和理解源代码: 进入……/01_demo目录,使用vi编辑器或其他编辑器阅读理解源代码。 编译驱动模块及测试程序: 用交叉编译进行编译。
因为使用的是交叉编译器,所以不需要建立设备节点。 首先插入驱动模块: 使用程序测试来进行测试,出现下面结果: 驱动模块成功插入,会在/dev下面建立一个叫做demo的设备文件,我们也可以使用cat命令来 直接调用read函数,来测试读过程,结果如下:
三、实验体会 本次试验过程中,我们小组遇到了大部分其他小组都遇到的问题,就是makefile的问题。一开始卡到这个点上无法进行下去, 后来对makefile进行了几次更正,终于编译成功。后面的步骤相对顺利。本次实验使我们充分理解驱动与应用程序的交互过程。
四、问题与理解 1.实验过程的理解: (1)驱动程序可以用来干什么? 它是应用程序与硬件之间的一个中间软件层,驱动程序应该为应用程序展现硬件的所有功能,不应该强加其他约束, 对于硬件使用的权限和限制应该由应用程序层控制。 (2)Makefile的作用: 自动化编译。一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率 (3)驱动程序和应用程序有什么区别? 应用程序有main函数,驱动程序没有main函数; 应用程序可以包含标准的头文件 2.实验过程中遇到的问题以及解决方案 (1)问题:编译时出现如下情况,系统提示Error 1: 解决: 之所以会出现这样的问题,是因为Makefile不正确,我们根据老师给的Makefile,对本机的进行了修改,终于解决了该问题。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |