符号表,是由许多符号表项组成的数组。
下面是“符号表项”的结构,
struct elf32_sym{
Elf32_Word st_name; //index into the symbol string table
Elf32_Addr st_value;
Elf32_Word st_size; //size of the symbol. 0 for no size or unkown size
unsigned char st_info; //BIND<<4+TYPE&0x0f
unsigned char st_other; //0 for reserve
Elf32_Half st_shndx; //relevant section table index, some indicates special meanings
};
St_name是符号的名称的index(详见下文)
St_value是该符号在内存中的地址(详见下文)
st_size是该符号的大小,以字节为单位
BIND说明符号是内部符号还是外部符号
TYPE说明符号的类型,是函数,还是变量,等等
st_other恒为0,保留字节
st_shndx是符号所在的section的index(详见下文)