2012-04-09 3 views
12

Я хочу проверить список символов, экспортированных ядром Linux. Так я огнь команды,Ядро 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 во втором поле?

ответ

18

Символы во втором столбце имеют тот же смысл, что они делают на выходе из nm:

D d Символ в секции инициализированных данных.

S s Символ находится в неинициализированной секции данных для небольших объектов.

T t Символ находится в тексте (в коде).

Символы верхнего расположения являются глобальными/экспортируемыми; нижний регистр - это локальные неэкспонированные символы.

Смежные вопросы