实验四

北京电子科技学院(BESTI)

实 验 报 告

课程:信息安全设计系统基础 班级:1353
姓名:王维臻、武西垚

学号:20135336、20135332
成绩: 指导教师: 娄嘉鹏 实验日期:2015.11.10

实验密级: 预习程度: 实验时间:15:30-18:00

仪器组次:36 必修/选修:必修 实验序号:1

实验名称:外设驱动程序设计

实验目的与要求:学习在 LINUX 下进行驱动设计的原理,掌握使用模块方式进行驱动开发调试的过程 。

实验仪器:

名称 型号 数量

LENOVO 1

ARM开发板 1

一、实验步骤

1、阅读和理解源代码

进入/arm2410cl/exp/drivers/01_demo,使用vi 编辑器或其他编辑器阅读理解源代码。

2、编译驱动模块及测试程序

Makefile 中有两种编译方法,可以在本机上使用gcc 也可以使用交叉编
译器进行编译,交叉编译器进行编译的结果。
                       

如果编译的时候出现问题,可能是在/usr/src 下没有建立一个linux 连接,可以使用下面的命令:

[root@zxt 01_demo]# cd /usr/src/

[root@zxt src]# ln -sf linux-2.4.20-8 linux

[root@zxt src]# ls

debug linux linux-2.4 linux-2.4.20-8 redhat

3、遇到的问题及解决方法

问题:在本次实验中,当实验进行当编译那一步时总是出错,无法显现出指导书上那样正确的情况。

解决方法:在实验中,编译我们使用了make的方法。我们错误认为使用交叉编译,但是应该用GCC编译,补上相关语句,修改MAKEFILE即可成功。

 

4、测试驱动程序

如果使用 gcc 编译的话,需要通过下面的命令来建立设备节点,如果使用交叉编译器的话,不需要建立设备节点。

#mknod /dev/demo c 254 0

首先要插入驱动模块demo.o,然后可以用lsmod 命令来查看模块是否已经被插入,在不使用该模块的时候还可以用rmmod 命令来将模块卸载。

posted @ 2015-11-30 21:45  武西垚  阅读(209)  评论(0编辑  收藏  举报