5.26--学习杂记【转】

简介:

转自:http://blog.csdn.net/luo3532869/article/details/7605414

printk的日志级别有八个分别为KERN_EMERG、 KERN_ALERT、 KERN_CRIT、 KERN_ERR 、 KERN_WARNNING、 KERN_NOTICE、 KERN_INFO 、KERN_DEBUG

printk默认的级别是DEFAULT_MESSAGE_LOGLEVEL,这个宏在kernel/printk.c中,在2.6.10内核中,这个宏的值为KERN_WARNNING,有的版本取的值不一样。当printk的级别小于console_loglevel时,消息才能显示出来,console_loglevel的初始值时DEFAULT_CONSOLE_LOGLEVEL。

 

gcc的5个选项,-c、-o 、-I、-E、-S

-E 只对源文件进行预处理,生成.i后缀名的文件,预处理只是简单的宏替换,将头文件插入源代码中

-S 对预处理后的文件进行汇编,生成.s后缀名的文件

-c 只产生目标文件,不连接,将汇编后的.s文件生成二进制文件

-o 指定目标文件

-I 指定头文件的目录

 

gcc的编译过程包括预处理、编译、汇编、链接。

 

关于构建模块程序的makefile中的obj-m,obj-y,obj-n,obj-

obj-y:将目标文件加入即将添入linux内核vmlinux的文件列表中

obj-m:将目标文件加入作为模块的文件列表中

obj-n,obj-的文件列表被忽略

 

模块编译的makefile文件中有这么一句:
make –C (KDIR)M=(KDIR)M=(shell pwd) modules

其中-C选项是在执行make前跳转到内核源代码树的目录中,该目录包含了linux内核的顶层makefile,M=$(shell pwd)选项使得在生成modules前再跳转回模块源代码目录














本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sky-heaven/p/5549594.html,如需转载请自行联系原作者


相关文章
|
8月前
|
Java API
从零开始学习 Java:简单易懂的入门指南之File类(二十九)
从零开始学习 Java:简单易懂的入门指南之File类(二十九)
|
8月前
|
开发框架 Java 关系型数据库
Java毕业论文参考文献参考例子整理
Java毕业论文参考文献参考例子整理
416 0
|
SQL 存储 算法
Java基础之十年面试杂记(下)
Java基础之十年面试杂记
131 0
Java基础之十年面试杂记(下)
|
消息中间件 缓存 安全
Java基础之十年面试杂记(上)
Java基础之十年面试杂记
119 0
Java基础之十年面试杂记(上)
|
Java 程序员 数据安全/隐私保护
25 篇 Java 入门技术博文,送给正在自学的你
25 篇 Java 入门技术博文,送给正在自学的你
111 0
|
Java
传智播客_风清扬_2015年java基础深入浅出版_刘意老师
传智播客_风清扬_2015年java基础深入浅出版_刘意老师 视频介绍:  本套Java视频教程是黑马程序员刘老师精心录制的免费精华版Java基础视频。  历经6年推出的一套Java入门教程,该视频专门针对零基础的学员录制,授课讲究通俗易懂、干货。
6802 0
|
SQL NoSQL 关系型数据库
|
网络安全 API