Linux下的ELF文件格式简介
(1)概述
Executable and linking format(ELF)文件是x86 Linux系统下的一种常用目标文件(object file)格式,ELF文件格式比较复杂,本文只是简要介绍它的结构。有三种主要类型:
(1)适于连接的可重定位文件(relocatable file),可与其它目标文件一起创建可执行文件和共享目标文件。
(2)适于执行的可执行文件(executable file),用于提供程序的进程映像,加载到内存执行。
(3)共享目标文件(shared object file),连接器可将它与其它可重定位文件和共享目标文件连接成其它的目标文件,动态连接器又可将它与可执行文件和其它共享目标文件结合起来创建一个进程映像。
(2)文件格式
ELF header在文件开始处描述了整个文件的组织,Section提供了目标文件的各项信息(如指令、数据、符号表、重定位信息等),Program header table指出怎样创建进程映像,含有每个program header的入口,Section header table包含每一个section的入口,给出名字、大小等信息。
(3)数据表示
ELF数据编码顺序与机器相关,数据类型有六种,见表1。
(4) ELF文件头
象bmp、exe等文件一样,ELF的文件头包含整个文件的控制结构。它的定义如下:
#define EI_NIDENT 16
typedef struct{
unsigned char e_ident[EI_NIDENT];
Elf32_Half e_type;
Elf32_Half e_machine;
Elf32_Word e_version;
Elf32_Addr e_entry;
Elf32_Off e_phoff;
Elf32_Off e_shoff;
Elf32_Word e_flags;
Elf32_Half e_ehsize;
El
相关文档:
由于 Linux 良好的用户权限管理体系,病毒往往是 Linux 系统管理员最后才需要考虑的问题。以往,Linux 上的杀毒软件主要是为企业的邮件和文件服务器所设计的。如今,随着 Linux 桌面用户数量的增长,桌面用户在受益于 Linux 系统对病毒较强的天然免疫力的同时,也需要杀毒软件清理从网络或U盘带来的WIndows病毒。尽管那些 ......
1.研究Linux实现多媒体播放的所有技术点
1) Live555库的编译与使用(已经搞定),需要进一步弄清楚的地方
在Linux如何编译动态库和静态库
如何编译,改变编译选项和集成编译
如何调试:gcc和IDE的 : QT Creator 、
2) ffmpeg在L ......
官方网站: http://fedoraproject.org/
在这儿选择需要的光盘格式镜像: http://fedoraproject.org/en/get-fedora-options#formats
i386体系: http://download.fedoraproject.org/pub/fedora/linux/releases/13/Fedora/i386/iso/Fedora-13-i386-DVD.iso
x86_64体系: http://download.fedoraproject.org/pub/fedora/lin ......