实验7,驱动程序的编写,驱动程序一helloworld.docVIP

  • 11
  • 0
  • 约 6页
  • 2016-05-24 发布于重庆
  • 举报

实验7,驱动程序的编写,驱动程序一helloworld.doc

实验7,驱动程序的编写,驱动程序一helloworld

实验7 驱动程序的编写 一、实验目的: 学习利用编写驱动程序,加载驱动模块、显示驱动模块,卸载驱动模块。 二、实验内容 前面学习了bootloader ?kernel ?filesystem,进行过内核的移植,根文件系统的制作,现在进行驱动程序的编写。 #su root切换root权限 密码123456 进入实验七目录 # mkdir –p /home/poplar/qi (如果没有此目录,建立目录) # cd /home/poplar/qi 编写hello.c #gedit hello.c hello.c #includelinux/module.h #includelinux/kernel.h MODULE_LICENSE(GPL); int insmod_module(void) { printk(Hello,World\n); return 0; } void rmmod_module(void) { printk(Goodbye\n]); } module_init(insmod_module); module_exit(rmmod_module); 书写Makefile #gedit Makefile KERNELDIR ?= /lib/modules/2.6.32-24-generic/build/ PWD := $(shell pwd) CC=$(CROSS_COMPILE)gcc obj-m :=hello.o modules: $(MAKE) -C $(KERNELDIR) M=$(PWD) modules (注意$(MAKE)前使用Tab缩进) #make编译 编译成功后会得到很多个文件,其中有我们所要的hello.ko 通过 insmod ?可以加载模块到我们的系统上。 #insmod ?./hello.ko 接着执行#lsmod |grep hello查看驱动,并记录显示内容 确实找到了我们编译出来的模块hello.ko 显示驱动程序的输出,输出的结果保存到/var/log/messages文件中。 #tail –f /var/log/messages 显示Hello,World。 记录显示的数据 然后卸载 rmmod hello.ko?

文档评论(0)

1亿VIP精品文档

相关文档