当前位置: 技术问答>linux和unix
ldd3中的hello world驱动程序的疑问???
来源: 互联网 发布时间:2016-11-26
本文导语: 驱动程序源码: #include #include #include MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT "Hello, worldn"); return 0; } static void hello_exit(void) { printk(KERN_ALERT ...
驱动程序源码:
Makefile文件为:
可当我用insmod hello.ko将模块加载进去时并没有输出那两个printk中的内容,望大牛们帮我解答解答,请直接讲解本题,我不想听大话,多谢!!!
#include
#include
#include
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, worldn");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel worldn");
}
module_init(hello_init);
module_exit(hello_exit);
Makefile文件为:
ifneq ($(KERNELRELEASE),)
obj-m:=hello.o
else
KERNELDIR:=/lib/modules/$(shell uname -r)/build #内核目录
PWD:=$(shell pwd) #当前目录
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
clean:
rm -rf *.o *mod.c *.moodbye
可当我用insmod hello.ko将模块加载进去时并没有输出那两个printk中的内容,望大牛们帮我解答解答,请直接讲解本题,我不想听大话,多谢!!!
|
到
/var/log/message
里去看
/var/log/message
里去看
|
用文本模式登陆linux是可以看到的。
用SSH工具连接,在终端看不到。
cat /var/log/messages | tail
或
dmesg | tail
查看。
用SSH工具连接,在终端看不到。
cat /var/log/messages | tail
或
dmesg | tail
查看。
|
printk()不是输出到控制台
可以用dmsg命令看到输出的内容
可以用dmsg命令看到输出的内容
|
dmesg
|
dmesg
|
同样的问题,看帖子:http://topic.csdn.net/u/20091025/16/5d8cea03-5a9c-4298-8b9a-53cf8db488dc.html
|
内核输出的信息等级不同
|
此为正解!
|
正解!!!