2012-04-09 13 views
12

Quiero verificar la lista del símbolo exportado por el kernel de Linux. Así que dispare el comando,Símbolo exportado del kernel de 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 

Ésta es la salida que tengo. Mi pregunta es, ¿cuál es el significado de cada campo en esta salida? El primer campo se parece a la dirección, no obtuve ninguna referencia para el segundo campo. ¿Alguien puede explicarme el significado de los valores, D, d, t, T, s en el segundo campo?

Respuesta

18

Los personajes de la segunda columna tienen el mismo significado que lo hacen en la salida de nm:

D d El símbolo está en la sección de datos inicializado.

S s El símbolo está en una sección de datos no inicializada para objetos pequeños.

T t El símbolo está en la sección de texto (código).

Los símbolos de mayúsculas son globales/exportados; minúsculas son símbolos locales no exportados.

Cuestiones relacionadas