当前位置: 技术问答>linux和unix
大家看看这个程序
来源: 互联网 发布时间:2015-01-25
本文导语: //hello.c #define MODULE #include int init_module(void) { printk("Hello, worldn"); return 0; } void cleanup_module(void) { printk("Goodbye cruel worldn"); } 以root身份登录后运行如下: #gcc -c hello.c #insmod ./hello.o 为何没有 Hello,world 的...
//hello.c
#define MODULE
#include
int init_module(void) { printk("Hello, worldn"); return 0; }
void cleanup_module(void) { printk("Goodbye cruel worldn"); }
以root身份登录后运行如下:
#gcc -c hello.c
#insmod ./hello.o
为何没有
Hello,world
的显示?
同样,
#rmmod hello
也没有
Goodbye cruel world
的显示。
请高手指教。
#define MODULE
#include
int init_module(void) { printk("Hello, worldn"); return 0; }
void cleanup_module(void) { printk("Goodbye cruel worldn"); }
以root身份登录后运行如下:
#gcc -c hello.c
#insmod ./hello.o
为何没有
Hello,world
的显示?
同样,
#rmmod hello
也没有
Goodbye cruel world
的显示。
请高手指教。
|
看日志的方法:
你先运行你的程序
然后运行dmesg|tail看看有没有信息
你先运行你的程序
然后运行dmesg|tail看看有没有信息
|
你在字符模式下insmod rmmod就可以看到了,或者在X下 dmesg -c 就可以了 呵呵 :)
《LINUX 设备驱动程序》里面有详述。
把/etc/inittab 里面的initdefault 那行的5 变成3就可以每次启动进入 text方式。想进入X startx
《LINUX 设备驱动程序》里面有详述。
把/etc/inittab 里面的initdefault 那行的5 变成3就可以每次启动进入 text方式。想进入X startx
|
如果你不是在本地调试的话是不回打印出来的,查看一下日志
|
gcc -DMODULE -D__KERNEL__ -o hello.o -c hello.c
|
据说printk应该是将数据写在了内核的缓冲区。所以看不出来
我也不是很清楚的说
我也不是很清楚的说
|
在Xwindow下同时按Alt+F1或F2,F3,F4,F5,F6