假装异步加载中...
04 Aug 2012

ELF文件格式

ELF,Excuteable and Linkable Format,文件的结构图如下所示:

 

ELF文件概览

ELF文件概览

文件由4部分组成:ELF头,Program Headers, Sections 和 Section Headers。只有ELF Header位置是固定的,其余部分位置、大小等信息由ELF头中的各项值来决定。ELF Header的格式如下所示

#define	EI_NIDENT	16
typedef	struct{
	unsigned char 	e_ident[EI_NIDENT];
	Elf32_Harlf		e_type;
	Elf32_Harlf		e_machine;
	Elf32_Word		e_version;
	Elf32_Addr 		e_entry;
	Elf32_Off		e_phofff;
	Elf32_Off		e_shoff;
	Elf32_Word		e_flags;
	Elf32_Harlf		e_ehsize;
	Elf32_Harlf		e_phentsize;
	Elf32_Harlf		e_phnum
	Elf32_Harlf		e_ehentsize;
	Elf32_Harlf		e_ehnum;
	Elf32_Harlf		e_shstrndx;
}Elf32_Ehdr;