Coff, elf, MO, OMF ----File Format
来源:互联网 发布:ip网络寻呼话筒项目 编辑:程序博客网 时间:2024/05/24 02:38
Coff, elf, MO, OMF ----File Format
(1) TI的编译器产生的obj文件以及连接后产生的out文件都是COFF格式;
COFF – 通用对象文件格式(Common Object File Format),是一种很流行的对象文件格式(注意:这里不说它是“目标”文件,是为了和编译器产生的目标文件(*.o/*.obj)相区别,因为这种格式不只用于目标文件,库文件、可执行文件也经常是这种格式)。大家可能会经常使用VC吧?它所产生的目标文件(*.obj)就是这种格式。其它的编译器,如GCC
COFF – 通用对象文件格式(Common Object File Format),是一种很流行的对象文件格式(注意:这里不说它是“目标”文件,是为了和编译器产生的目标文件(*.o/*.obj)相区别,因为这种格式不只用于目标文件,库文件、可执行文件也经常是这种格式)。大家可能会经常使用VC吧?它所产生的目标文件(*.obj)就是这种格式。其它的编译器,如GCC
(GNU Compiler Collection)、ICL(Intel C/C++ Compiler)、VectorC,也使用这种格式的目标文件。不仅仅是C/C++,很多其它语言也使用这种格式的对象文件。统一格式的
目标文件为混合语言编程带来了极大的方便。
COFF文件一共有8种数据,自上而下分别为:
1. 文件头(File Header)
2. 可选头(Optional Header)
3. 段落头(Section Header)
4. 段落数据(Section Data)
5. 重定位表(Relocation Directives)
6. 行号表(Line Numbers)
7. 符号表(Symbol Table)
8. 字符串表(String Table)
1. 文件头(File Header)
2. 可选头(Optional Header)
3. 段落头(Section Header)
4. 段落数据(Section Data)
5. 重定位表(Relocation Directives)
6. 行号表(Line Numbers)
7. 符号表(Symbol Table)
8. 字符串表(String Table)
(2)elf是COFF 的后继, 其特点是可以有多个区段,并可以使用32位或64位的值。 它有一个主要的缺点: ELF 在其设计时假设每个系统体系结构只有一种 ABI。 这种假设事实上
相当错误,甚至在商业化的SYSV世界中都是错误的 (它们至少有三种ABI: SVR4, Solaris, SCO)。
(3)MO是motolola的数据格式;
(4)常用格式的还有OMF-对象模型文件(Object Module File)。OMF是一大群IT巨头在n年制定的一种格式,在Windows平台上很常见。大家喜欢的Borland公司现在使用的目标文件就是这种格式。MS和Intel在n年前用的也是这种格式,现在用COFF格式。ELF格式在非Windows平台上使用得比较多,在Windows平台基本上没见过。
- Coff, elf, MO, OMF ----File Format
- COFF、ELF、OMF
- Linux ELF file format introduction
- The ELF Object File Format: Introduction
- The ELF Object File Format by Dissection
- ELF format
- 关于COFF/PE/ELF
- elf和coff格式
- DSP COFF vs. ELF
- ELF,COFF,PE
- Manage Instance & OMF & Parameter file
- 什么是ELF,COFF,和PE COFF
- 什么是ELF,COFF,和PE COFF
- Linux-Makefile(how to convert .out file to make .bin .elf, .hex file format)
- out、COFF、ELF 的历史渊源
- out、COFF、ELF 的历史渊源
- diff between coff and elf
- a.out elf pe coff
- Kernel地图:Kconfig与Makefile
- 为你的应用程序在桌面上生成快键方式
- 各大IT公司笔试真题汇总
- [转载]MFC中建立新文档失败问题解决办法
- 对开源ERP不看好的四大理由
- Coff, elf, MO, OMF ----File Format
- 错误:“已有打开的与此命令相关联的 DataReader,必须首先将它关闭”的解决方法。
- stl提供了三个最基本的容器:vector,list,deque
- Ghost XP系统安装IIS后没有IIS组件解决办法
- vc学习,Invalidate(true),Invalidate(false)
- C++ 中stdafx.h
- CreatePen
- C++中的异常规范
- 二极管7种应用电路详解之二