【发布时间】:2018-01-14 12:38:49
【问题描述】:
我在某些操作系统内核中看到以下代码。但是我不明白__section的使用方式,也不知道这段代码是什么意思。
#define KEEP_PAGER(sym) \
extern const unsigned long ____keep_pager_##sym; \
const unsigned long ____keep_pager_##sym \
__section("__keep_meta_vars_pager") = (unsigned long)&sym
【问题讨论】:
-
您是否尝试过在代码中搜索,看看它是否在任何地方声明或定义?
-
谢谢,明白了。它在另一个#define 中定义。我在徘徊为什么它没有被属性包围。我终于找到了以下#define:
#define __section(x) __attribute__((section(x)))
标签: c linux gcc linux-kernel compiler-optimization