注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

liuyue18301的个人主页

追逐梦想 光辉岁月

 
 
 

日志

 
 

有关gcc的扩展__attribute__((unused))   

2009-10-28 10:29:10|  分类: linux驱动 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在分析linux内核时注意到有些函数会有添加__attribute__((unused)),

在gcc手册中找到了有关的解释:

unused:This attribute, attached to a function, means that the function is meant to be

        possibly unused. GCC will not produce a warning for this function.

===============================================================================

used: This attribute, attached to a function, means that code must be emitted for the

       function even if it appears that the function is not referenced. This is useful,

       for example, when the function is referenced only in inline assembly.

 

表示该函数或变量可能不使用,这个属性可以避免编译器产生警告信息。

 

 

##表示连接前后两个字符串,例如传进来的fn是test,则结果是

static initcall_t __initcall_test \

 

 

在vmlinux.lds.S中连接脚本汇编中有这段代码  
__con_initcall_start = .;   
*(.con_initcall.init)  
__con_initcall_end = .;
整个函数都放在这个区域,这个宏定义是构建一个.con_initcall.init节的指向初始函数的指针,linux经常会把一些类的函数放到指定的区域里,例如initcall.init区域就是存放了启动过程调用的函数,在启动完毕后就可以将这一区段清除掉。
  评论这张
 
阅读(1590)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018