LDD3_No1.:Hello,World的问题

来源:互联网 发布:正装照p图软件 编辑:程序博客网 时间:2024/06/06 20:25

 都说是经典,忍不住, 前几天看了LDD3。

老习惯,开篇总是HELLO,WORLD。按照作者的提示:使用标准内核,到kernel.org上下载了最新的稳定版本,make oldconfig,不成功,make menuconfig,不成功。晕!

想想算了,我的vmware中安装的ubuntn即是2.6内核,不编译也应该可的。

(编译内核忒麻烦,在我的所有经历中,不成功是正常的,个人感觉有时候在浪费时间)

遂抄书:

按照LDD3提供的例子中的MAKEFILE重新写:

% make

% su
root# insmod ./hello.ko
???没有反应

%tail /var/log/messages

也没有看到结果,baidu一下,把hello.c中的printk(KERN_ALERT "Hello, world/n")修改成:

printk(KERN_INFO "Hello, world/n");

重新make

root# insmod ./hello.ko

终端中还是没有信息,不过:

%tail /var/log/messages

在最后一行可以看到:

Hello,world

 


 

查了一下:

KERN_ALERT和KERN_INFO等宏,表示优先级,具体如下:

#define KERN_EMERG "<0>" /* system is unusable   */
#define KERN_ALERT "<1>" /* action must be taken immediately */
#define KERN_CRIT "<2>" /* critical conditions   */
#define KERN_ERR "<3>" /* error conditions   */
#define KERN_WARNING "<4>" /* warning conditions   */
#define KERN_NOTICE "<5>" /* normal but significant condition */
#define KERN_INFO "<6>" /* informational   */
#define KERN_DEBUG "<7>" /* debug-level messages   */

0-7,优先级依次递减。

不过有网友说,在x86机器上,只能通过:

dmesg 或者

tail /var/log/message 查看

原创粉丝点击