这里以linux-2.4.20-8为例
1.首先编写一个hello.c文件,如图所示这就是驱动程序的标准模式。

2.在低版本的linux中驱动程序是一个.o文件,而且在低版本的内核需要手动添加kernel和module模块,所以需要在命令终端输入gcc -c -kernel -module hello.c -I/usr/src/linux-2.4.20-8/include,生成hello.o驱动文件。也可以考虑在hello.c文件内开头用宏定义kernel 和module模块,比如#ifndef _KERNEL_ #define _KERNEL_ #endif,编译之后如下图用ls命令可以查看已经生成hello.o文件,

3.使用ismod hello.o加载驱动,rmmod hello卸载模块
本文详细介绍在Linux 2.4.20-8环境下,从编写Hello World驱动程序到编译生成.o文件,再到模块加载与卸载的全过程。适合初学者了解Linux内核模块开发流程。

998

被折叠的 条评论
为什么被折叠?



