|
FreeNOS
|
#include <Types.h>Go to the source code of this file.
Data Structures | |
| struct | ELFHeader |
| Describes an ELF executable and must be placed at the beginning of executable programs. More... | |
| struct | ELFSegment |
| ELF program segment in the executable file. More... | |
Macros | |
Identification indexes | |
| #define | ELF_INDEX_MAGIC0 0 |
| Magic number byte 0 index. More... | |
| #define | ELF_INDEX_MAGIC1 1 |
| Magic number byte 1 index. More... | |
| #define | ELF_INDEX_MAGIC2 2 |
| Magic number byte 2 index. More... | |
| #define | ELF_INDEX_MAGIC3 3 |
| Magic number byte 3 index. More... | |
| #define | ELF_INDEX_CLASS 4 |
| File class index. More... | |
| #define | ELF_INDEX_DATA 5 |
| Data encoding index. More... | |
| #define | ELF_INDEX_VERSION 6 |
| File version index. More... | |
| #define | ELF_INDEX_PAD 7 |
| Unused padding index. More... | |
| #define | ELF_INDEX_NIDENT 16 |
| Number of bytes in the ELF identity field. More... | |
Magic numbers | |
| #define | ELF_MAGIC0 0x7f |
| Magic number byte 0. More... | |
| #define | ELF_MAGIC1 'E' |
| Magic number byte 1. More... | |
| #define | ELF_MAGIC2 'L' |
| Magic number byte 2. More... | |
| #define | ELF_MAGIC3 'F' |
| Magic number byte 3. More... | |
Processor classes | |
| #define | ELF_CLASS_NONE 0 |
| Invalid class. More... | |
| #define | ELF_CLASS_32 1 |
| 32-bit objects. More... | |
| #define | ELF_CLASS_64 2 |
| 64-bit objects. More... | |
Data encoding (endianness) | |
| #define | ELF_DATA_NONE 0 |
| Invalid data encoding. More... | |
| #define | ELF_DATA_2LSB 1 |
| 2-complement, little endian. More... | |
| #define | ELF_DATA_2MSB 2 |
| 2-complement, big endian. More... | |
Object file types | |
| #define | ELF_TYPE_NONE 0 |
| No file type. More... | |
| #define | ELF_TYPE_REL 1 |
| Relocatable file. More... | |
| #define | ELF_TYPE_EXEC 2 |
| Executable file. More... | |
| #define | ELF_TYPE_DYN 3 |
| Shared object file. More... | |
| #define | ELF_TYPE_CORE 4 |
| Core file. More... | |
| #define | ELF_TYPE_NUM 5 |
| Number of defined types. More... | |
| #define | ELF_TYPE_LOPROC 0xff00 |
| Processor-specific range start. More... | |
| #define | ELF_TYPE_HIPROC 0xffff |
| Processor-specific range end. More... | |
Machine architectures | |
| #define | ELF_MACHINE_NONE 0 |
| No machine. More... | |
| #define | ELF_MACHINE_M32 1 |
| AT&T WE 32100. More... | |
| #define | ELF_MACHINE_SPARC 2 |
| SPARC. More... | |
| #define | ELF_MACHINE_386 3 |
| Intel IBM-PC architecture. More... | |
| #define | ELF_MACHINE_68K 4 |
| Motorola 68000. More... | |
| #define | ELF_MACHINE_88K 5 |
| Motorola 88000. More... | |
| #define | ELF_MACHINE_860 7 |
| Intel 80860. More... | |
| #define | ELF_MACHINE_MIPS_RS3 8 |
| MIPS RS3000 big endian. More... | |
| #define | ELF_MACHINE_MIPS_RS4 10 |
| MIPS RS4000 big endian. More... | |
Object file version. | |
| #define | ELF_VERSION_NONE 0 |
| Invalid version. More... | |
| #define | ELF_VERSION_CURRENT 1 |
| Current version. More... | |
Segment types | |
| #define | ELF_SEGMENT_NULL 0 |
| Unused segment. More... | |
| #define | ELF_SEGMENT_LOAD 1 |
| Loadable segment. More... | |
| #define | ELF_SEGMENT_DYNAMIC 2 |
| Dynamic linker information. More... | |
| #define | ELF_SEGMENT_INTERP 3 |
| Path to an interpreter for dynamic linking. More... | |
| #define | ELF_SEGMENT_NOTE 4 |
| Auxiliary information. More... | |
| #define | ELF_SEGMENT_SHLIB 5 |
| Reserved. More... | |
| #define | ELF_SEGMENT_SELF 6 |
| Refers to the program segment header itself. More... | |
| #define | ELF_SEGMENT_LOPROC 0x70000000 |
| Reserved for processor-specific semantics. More... | |
| #define | ELF_SEGMENT_HIPROC 0x7fffffff |
| Reserved for processor-specific semantics. More... | |
Typedefs | |
| typedef struct ELFHeader | ELFHeader |
| Describes an ELF executable and must be placed at the beginning of executable programs. More... | |
| typedef struct ELFSegment | ELFSegment |
| ELF program segment in the executable file. More... | |
1.8.17