LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 540|回复: 0

请教一个驱动加载的问题

[复制链接]
发表于 2005-4-27 20:06:59 | 显示全部楼层 |阅读模式
我用的Linux环境是redhat 9.0(linux内核是2.4.20-8),我在下面作了个最简单的模块加载试验,可是每次都是提示内核不匹配,应该怎样修改才能在现有的环境下运行呢?下面是我的源程序:
#define __NO__VERSION
#define MODULE
#include<linux/module.h>
#include<linux/config.h>
#include<linux/version.h>

char kernel_version[]=UTS_RELEASE;
static int hello_init(void)
{
printk("<1>Hello,world!\n");
return 0;
}
static void hello_exit(void)
{
printk("Goodbye cruel world!\n");
}
module_init(hello_init);
module_exit(hello_exit);

我的编译命令是(在root用户下)
gcc -c hello.c
加载命令是
insmod hello.o
每次的提示是
kernel-module version mismach
hello.o was compiles for kernel version 2.4.20
while this kernel is version 2.4.20-8
我用了强制加载命令
insmod -f hello.o
虽然可以加载成功,但是有警告信息,而且也没得到预期的结果,
当用rmmod hello.o命令卸载时,提示说
module hello.o is not loaded
但是用ksyms 命令却可以看到已经加载的模块。
希望论坛上驱动高手给指点指点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表