【问题标题】:Linux kernel exported symbolsLinux 内核导出符号
【发布时间】:2012-04-21 16:29:59
【问题描述】:

我想查看 Linux 内核导出的符号列表。 所以我触发了这个命令,

# cat /proc/kallsyms
0000000000000000 D per_cpu__irq_stack_union
0000000000000000 D __per_cpu_start
0000000000004000 D per_cpu__gdt_page
0000000000005000 d per_cpu__exception_stacks
000000000000b000 d per_cpu__idt_desc
000000000000b010 d per_cpu__xen_cr0_value
000000000000b018 D per_cpu__xen_vcpu
000000000000b020 D per_cpu__xen_vcpu_info
000000000000b060 d per_cpu__mc_buffer
000000000000c570 D per_cpu__xen_mc_irq_flags

这是我得到的输出。 我的问题是,这个输出中每个字段的含义是什么? 第一个字段看起来像地址,第二个字段我没有得到任何参考。 有人可以向我解释第二个字段中值 D,d,t,T,s 的含义吗?

【问题讨论】:

    标签: linux linux-kernel


    【解决方案1】:

    第二列中的字符与nm的输出中的字符含义相同:

    D d 符号在初始化数据段中。

    S s 符号位于小对象的未初始化数据段中。

    T t 符号在文本(代码)部分。

    大写符号是全局/导出的;小写是本地未导出的符号。

    【讨论】:

      猜你喜欢
      • 2012-04-14
      • 1970-01-01
      • 2012-02-26
      • 2016-01-25
      • 1970-01-01
      • 1970-01-01
      • 2011-02-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多