一,环境搭建步骤
以上步骤完成后,会在/lib/modules 目录下生成一个文件夹3.0.0-12-generic
二,hello.c
三,Makefile
hello.c hello.ko hello.mod.o Makefile modules.order
hello.c~ hello.mod.c hello.o Makefile~ Module.symvers
1>装载目标模块:~#insmod ./hello.ko
~#lsmod //查看目前安装的驱动模块,有hello
2>模块装载触发hello.c的init()方法,输出hello world,如果没有的话,是因为其将输出放到/var/log/syslog中去了。打开便可以看见你的结果!
卸载目标模块命令是:~#rmmod ./hello.ko
总结:从此我们迈出了Linux驱动开发的第一步
代码深度解析:
1)查找文件位置:
我的文件位置在:/usr/src/linux-source-3.0.0/include/linux/module.h //其余的位置也有好多,但是这个文件位置才是正解
/usr/src/linux-source-3.0.0/include/linux/in.h
2)另外,如果你的模块需要用到参数传递,那么你可能就要声明moduleparam.h这个头文件了。
3)模块里常包含一些描述性声明,如:
4)