리눅스에서 printk함수를 사용하고 싶습니다.
글쓴이: orionlight111 / 작성시간: 목, 2009/12/03 - 12:44오후
안녕하세요.
리눅스모듈프로그램에서 printk함수 사용하는 방법을 알고 싶습니다.
아래와 같이 모듈적재시 printk로 문자열을 출력하게 하였는데 콘설창에 문자열이
출력되지 않습니다. 또 /var/log/message파일에도 출력내용이 없습니다.
echo 8 /proc/sys/kernel/printk 하면 console창에 나온다고 했는데
그렇게 해도 않됩니다. 왜 그럴까요? 조언 좀 주세요.
#include <linux/init.h> #include <linux/kernel.h> #include <linux/module.h> .... int __init init_print(void) { printk(KERN_ALERT "Hello!"); return 0; } ... module_init(init_print);
Forums:
출력할 문자열 끝에 \n을 안 붙이셨군요.
일단, printk(KERN_ALERT "Hello!");를 printk(KERN_ALERT "Hello!\n");으로 고쳐보시기 바랍니다.
그리고 printk로 출력하는 내용은 콘솔에 출력되기 때문에 gnome-terminal 같은 일반 X-Window 터미널에서는 보이지 않는다는 점을 알아 두시기 바랍니다.
그리고 echo 8 /proc/sys/kernel/printk는 echo 8 > /proc/sys/kernel/printk를 잘못 적으신 것 같군요. 하지만, KERN_ALERT은 priority가 아주 높기 때문에 이 문제와는 상관이 없을 것입니다.
댓글 달기