我的第一个驱动程序,怎么看不到输出
我在puTTY下调试看不到输出,在linux 字符终端上也看不到我用printk打印的hello world? 源码? #include <linux/kernel.h> /* printk()在这个文件里 */
static int
init_module
(){
printk("<1>Hello,World!\n");
return 0; /* 如果初始工作失败,就返回非0 */
}
static void
cleanup_module
(){
printk("<1>Bye!\n");
} 后面还缺这两个语句吧?
module_init(init_module);
module_exit(cleanup_module);
你只定义,并未执行。
好像还应该包括这两个头文件:
<linux/init.h>
<linux/module.h>
你可以参考ldd3文档。 默认,printk不会将信息发送之pts,你可以使用ldd中的setconsole.c程序。 dmesg看一下 #include<linux/init.h>
#include<linux/modul.h>
#include<linux/kernel.h>
static int init_module(void)
{
printk("<1>Hello,World!\n");
return 0; /* 如果初始工作失败,就返回非0 */
}
static void cleanup_module (void)
{
printk("<1>Bye!\n");
}
module_init(init_module);
module_exit(cleanup_module );
MODULE_LICENSE("GPL") /*用于指定模块的版权*/
MODULE_AUTHOR("Shakespeare") /*指定代码作者*/ kill klogd然后cat /proc/kmsg 这个程序的Makefile是什么样子的???
可以发来看看么???
俺这两天也被搞的狂郁闷~~
还有 2.4 和 2.6 的应该有区别的吧?? 看这个:
http://firstray.cn/?p=275 2.4和2.6的区别大着去了。嘿嘿 用<0>就可以打印出来了,或者,你去查看dmesg
页:
[1]