__atribute__使用:关于_attribute__ ((used,__section__(".xxxx")))的理解
2008-01-16 09:37
633 查看
从etherboot代码中发现有一个__attribute__的使用,#define __pci_driver __attribute__ ((used,__section__(".drivers.pci")))
/* Defined by the linker... */
extern const struct pci_driver pci_drivers[];
extern const struct pci_driver pci_drivers_end[];
这部分代码是etherboot搜索相应网卡驱动用到的。
for(driver = pci_drivers; driver < pci_drivers_end; driver++) {
/*scan driver*/
}
__section__是把相应的结构放到指定的段.drivers.pci中
在 src/arch/i386/core/etherboot.lds中有下面描述
SECTIONS {
......
.drivers.pci : {
pci_drivers = . ;
*(.drivers.pci);
pci_drivers_end = . ;
}
......
}
说明所有的驱动都放在pci_drivers 和pci_drivers_end两个地址之间,这样可以通过上面的for循环一次查找相应的驱动程序。
unused
属性 unused 用于函数和变量,表示该函数或变量可能不使用,这个属性可以避免
编译器产生警告信息。used反之 。
/* Defined by the linker... */
extern const struct pci_driver pci_drivers[];
extern const struct pci_driver pci_drivers_end[];
这部分代码是etherboot搜索相应网卡驱动用到的。
for(driver = pci_drivers; driver < pci_drivers_end; driver++) {
/*scan driver*/
}
__section__是把相应的结构放到指定的段.drivers.pci中
在 src/arch/i386/core/etherboot.lds中有下面描述
SECTIONS {
......
.drivers.pci : {
pci_drivers = . ;
*(.drivers.pci);
pci_drivers_end = . ;
}
......
}
说明所有的驱动都放在pci_drivers 和pci_drivers_end两个地址之间,这样可以通过上面的for循环一次查找相应的驱动程序。
unused
属性 unused 用于函数和变量,表示该函数或变量可能不使用,这个属性可以避免
编译器产生警告信息。used反之 。
相关文章推荐
- __atribute__使用:关于_attribute__ ((used,__section__(".xxxx")))的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- spring3 jsp页面使用<form:form modelAttribute="xxxx" action="xxxx">报错,附连接数据库的spring MVC annotation 案例
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于使用","拼接字符串
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- 关于使用Ajax传中文数据到后台接受乱码问题 data:{"dictype":"客户信誉度"}
- 20140627-IAR平台中Warning[Pe550]: variable "xxxx" was set but never used的问题
- 总结C++中三种关于"new"的使用方法
- 关于"Excel._Worksheet和DocEvents_Event之间存在二义性.将使用方法组"的问题
- 关于"使用注册为 allowDefinition='MachineToApplication' 的节是错误的"的解决方案
- 关于NSLocalizedString(@"Foo %@",nil) 使用 NSLocalizedString实现App文本的本地化
- Attribute value ("XXX") is quoted with " which must be escaped when used within the value 异常的修正2
- 关于在Java中使用request.getRequestDispatcher(".....")引起的css文件无效或图片无效问题。