繁体   English   中英

关于linux模块printk

[英]about linux module printk

我写了一个模块,并希望将它添加到kernel.It将打印一个世界,当我insmod模块。但它不会...

模块为:

#include <linux/module.h>
#include <linux/init.h>

static int __init hello_init()
{
    printk(KERN_EMERG"Hello World!\n");
    return 0;
}

static void __exit hello_exit()
{
    printk("<6>hello exit\n");
}

module_init(hello_init);
module_exit(hello_exit);

当我加载模块时,为什么“Hello World!\\ n”不打印? 有没有人遇到这个问题? 想你的帮助....

也许这是一个链接或标题问题。

您似乎还没有指定任何许可证,这可能是一个问题。

您可以尝试此站点 ,尤其是关于链接和加载部分。

由于您没有收到编译/链接错误,并且insmod / modprobe没有抱怨缺少符号,因此有两个原因导致这种情况发生:

  1. 有人定义了一个宏printk()
  2. 你看错了地方。 该文本将打印到syslog中。 要看到这一点,请使用dmesg | tail dmesg | tail

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM