root권한으로 insmod를해서 간단한 메세지 출력을 하려 하는데

sisbn의 이미지

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

int init_module(){
printk("hello module\n");
return 0;
}


void cleanup_module(){
printk("bye\n");

}

gcc -D__KERNEL__ -D_LINUX -DMODULE -c hello.c
insmod hello.o 이렇게 했는데 warning message만 뜨고 저

hello module이라는 메세지는 뜨질 않네요. 왜 그런지 아시는분 좀 알려주세요.ㅜ.ㅜ

hb_kim의 이미지

#define MODULE ???

emptysky의 이미지

어떤 warning message 인지 정확히 명시하셨으면 좋을뻔 했네요

-DMODULE 옵션으로 #define MODULE 은 대체가 됩니다.
그러니 이 문제는 아닌거 같구요

일반적으로 printk 출력은 X 위에선 출력되지 않습니다.
그 외 printk의 출력 레벨 문제 일수도 있으나
먼저 /var/log/message 에서 원하는 메세지 출력이 되었는지 확인해 보시고
콘솔창에서 다시 해보세요

『 아픔은.. 아픔을 달래줄 약이 무엇인지 알면서도 쓰지 못할 때 비로소 그 아픔의 깊이를 알수가 있음이다. 』
『 for return...』