当前位置: 技术问答>linux和unix
简单问题,高分相送.为什么我的printk打不出来信息?
来源: 互联网 发布时间:2015-06-22
本文导语: 有如下的一段程序(存放在test_modu.c文件中) #define MODULE #include #include #include int init_current(void) { printk("The Current process isn"); printk("Current %s, current.pid= %i",current->comm,current->pid); return 0; } void cleanup_cu...
有如下的一段程序(存放在test_modu.c文件中)
#define MODULE
#include
#include
#include
int init_current(void)
{
printk("The Current process isn");
printk("Current %s, current.pid= %i",current->comm,current->pid);
return 0;
}
void cleanup_current(void)
{
printk("Exit the process.");
}
当我在linux下面通过:gcc -c test_modu.c后得到test_modu.o
住宅区个过程中没有任何的错和警告,然后运行:
insmod ./test_modu.o
这时没有任的反映,既不报错,也不打印东西到屏幕上.不知是为什么?请各位指点,谢谢
#define MODULE
#include
#include
#include
int init_current(void)
{
printk("The Current process isn");
printk("Current %s, current.pid= %i",current->comm,current->pid);
return 0;
}
void cleanup_current(void)
{
printk("Exit the process.");
}
当我在linux下面通过:gcc -c test_modu.c后得到test_modu.o
住宅区个过程中没有任何的错和警告,然后运行:
insmod ./test_modu.o
这时没有任的反映,既不报错,也不打印东西到屏幕上.不知是为什么?请各位指点,谢谢
|
dmesg
或者在/etc/sysconf.log里指定log输出文件
或者在/etc/sysconf.log里指定log输出文件
|
在“黑窗口”中看。
另,搜索以前的帖子。
另,搜索以前的帖子。
|
如果想在控制台上看,应该更改控制台的显示级别。
看看Linux Device Driver这本书有介绍。
看看Linux Device Driver这本书有介绍。
|
好象是没有定义init段。所以程序加载的时候没有初始化。。呵呵~~应该有init段了,才可以。看老兄的代码应该是希望在加载的时候执行init_current.因此应该是在定义函数时候用
int __init init_current(void)
你试试。。我估计是这个原因。还有打印的东西要么在屏幕上。要么找找syslog吧。。。应该没其他问题了。。。
int __init init_current(void)
你试试。。我估计是这个原因。还有打印的东西要么在屏幕上。要么找找syslog吧。。。应该没其他问题了。。。