没有合适的资源?快使用搜索试试~ 我知道了~
ARM-ELF-Specification
需积分: 4 3 下载量 100 浏览量
2008-06-24
14:57:02
上传
评论
收藏 275KB PDF 举报
温馨提示
试读
42页
ARM-ELF-Specification.pdf
资源详情
资源评论
资源推荐
ARM ELF
SWS ESPC 0003 B-02 Page 1 of 42
ARM ELF
Development Systems Business Unit
Engineering Software Group
Document number: SWS ESPC 0003 B-02
Date of Issue: 8 June, 2001
Author: -
Authorized by:
© Copyright ARM Limited 1998, 2000. All rights reserved.
Section 3 © Copyright Tool Interface Standards Committee 1995.
Abstract
This specification defines the ARM-specific features of Executable and Linking Format (ELF).
Keywords
ARM ELF, ELF, ELF relocation types, Executable and Linking Format (ELF)
Distribution list
Name Function Name Function
ARM ELF
SWS ESPC 0003 B-02 Page 2 of 42
Contents
1 ABOUT THIS DOCUMENT 4
1.1 Change control 4
1.1.1 Current status and anticipated changes 4
1.1.2 Change history 4
1.2 References 4
1.3 Terms and abbreviations 4
2SCOPE 5
3 GENERIC 32-BIT ELF 6
3.1 Introduction 6
3.1.1 File Format 6
3.1.2 Data Representation 7
3.1.3 Character Representations 7
3.2 ELF Header 8
3.2.1 ELF Identification 10
3.3 Sections 12
3.3.1 Special Sections 16
3.4 String Table 18
3.5 Symbol Table 19
3.5.1 Symbol Values 21
3.6 Relocation 21
3.7 Program view 22
3.7.1 Program Header 22
3.7.2 Note Section 24
3.7.3 Program Loading 25
3.7.4 Dynamic Linking 25
3.8 Special Sections Names 26
3.9 Pre-existing Extensions 26
4 ARM- AND THUMB-SPECIFIC DEFINITIONS 27
4.1 ELF header 27
4.1.1 Entry points 28
4.2 Section names 28
ARM ELF
SWS ESPC 0003 B-02 Page 3 of 42
4.3 Section headers 29
4.3.1 Common sections 29
4.3.2 Section alignment 29
4.3.3 Link and info fields 30
4.4 Symbols 30
4.4.1 Symbol value 30
4.4.2 Symbol size 30
4.4.3 Weak symbols 30
4.4.4 Symbol names 31
4.4.5 Sub-class and super-class symbols 31
4.4.6 Function address constants and pointers to code 31
4.4.7 Mapping and tagging symbols 31
4.4.7.1 Mapping symbols 32
4.4.7.2 Tagging symbols 32
4.4.8 Symbol table order 32
4.4.9 Dynamic symbol table entries 33
4.5 Relocation types 33
4.5.1 Dynamic relocation types 36
4.5.2 Multiple relocation 37
4.5.3 Field extraction and insertion 37
4.5.4 Relocations that depend on the type of the target location 38
4.6 Program headers 39
4.7 Dynamic linking and relocation 40
4.7.1 The dynamic segment 40
4.7.2 The dynamic segment program header 40
4.7.3 The dynamic section 41
DT_SYMBOLIC 41
4.7.4 The hash table section 42
ARM ELF
SWS ESPC 0003 B-02 Page 4 of 42
1 ABOUT THIS DOCUMENT
1.1 Change control
1.1.1 Current status and anticipated changes
Issue A-06 of this specification is the first public release.
Issue A-08 is the ADS-1.0/1.0.1 release.
Issue B-01 is the ADS-1.1 release.
1.1.2 Change history
Issue Date By Change
A-06 5 November 1998 - Editorial changes following review of final internal DRAFT.
A-07 17 September 1999 -
Added definitions of PF_xx flags, PF_ARM_xxx flags, $r, $p, and the
EF_ARM_EABIxxx version number. Updated the definition of common
section, added descriptions of $Super$$ and $Sub$$ and clarified
type-dependent relocation.
A-08 22 September 1999 - Removed $r—inadequate for the purpose.
B-01 August-October 2000 -
Simplified and clarified the presentation. Completed the description of
shared objects and re-locatable executables.
B-02 8 June 2001 - Repaired the broken hyperlink to TIS ELF.
1.2 References
This document refers to the following document and reproduces book 1 of it as section 3, below.
Ref Doc No Author(s) Title
TIS-ELF http://www.x86.org/ftp/manuals/tools/elf.pdf Tool Interface Standards
(TIS) Committee
Executable and Linking Format
(ELF) Specification (version 1.2)
1.3 Terms and abbreviations
This document uses the following terms and abbreviations.
Term Meaning
TIS Tool Interface Standards
ELF Executable and Linking Format
(E)ABI (Embedded) Applications Binary Interface
OS Operating System
ARM ELF
SWS ESPC 0003 B-02 Page 5 of 42
2 SCOPE
This specification defines ARM Executable and Linking Format (ARM ELF). It follows the essential structure of the
Tool Interface Standards (TIS) Committee’s version 1.2 specification of ELF (TIS-ELF). TIS-ELF is divided into
three major sections that TIS-ELF calls books:
o Book 1 defines generic, 32-bit ELF. All users of 32-bit ELF use the definitions given in book 1. Section 3 of
this specification reproduces the content of book 1 of TIS-ELF (Copyright Tool Interface Standards Committee
1995
), with a few editorial corrections and clarifications, but no intentional change of content.
o Book 2 defines processor specifics, the definitions used by all users of ELF for a given processor (in the case
of TIS-ELF, for the Intel x86 architecture).
o Book 3 defines operating system specifics (in the case of TIS-ELF, for Unix System V.4 for x86).
Section 4 of this specification covers the material of books 2 and 3 of TIS-ELF. It includes:
o ARM- and Thumb-specific definitions needed by all users of ARM ELF.
o ARM- and Thumb-specific definitions relating to the ARM Embedded Applications Binary Interface (EABI).
The ARM EABI underlies many ARM- and Thumb-based operating environments that follow the single address-
space model.
Some operating systems—especially those founded on multiple virtual address spaces—define their own
conventions for using ARM ELF—especially in relation to shared objects and dynamic linking. These OS-specific
definitions extend section 4 of this specification.
剩余41页未读,继续阅读
hyperzerg
- 粉丝: 0
- 资源: 75
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0