![]() |
Max OS 0.3
|
Defines structures and enums for handling ELF (Executable and Linkable Format) files in MaxOS. More...
#include <cstdint>#include <cstddef>#include <memory/memorymanagement.h>#include <memory/memoryIO.h>Go to the source code of this file.
Classes | |
| struct | MaxOS::processes::ELFHeader64 |
| The header of a 64-bit ELF file. More... | |
| struct | MaxOS::processes::ELFProgramHeader64 |
| The header for the program segments in a 64-bit ELF file. More... | |
| struct | MaxOS::processes::ELFSectionHeader64 |
| The header for the sections in a 64-bit ELF file. More... | |
| class | MaxOS::processes::ELF64 |
| Handles the loading and parsing of 64-bit ELF files. More... | |
Typedefs | |
| typedef struct MaxOS::processes::ELFHeader64 | MaxOS::processes::elf_64_header_t |
| Alias for ELFHeader64 struct. | |
| typedef struct MaxOS::processes::ELFProgramHeader64 | MaxOS::processes::elf_64_program_header_t |
| Alias for ELFProgramHeader64 struct. | |
| typedef struct MaxOS::processes::ELFSectionHeader64 | MaxOS::processes::elf_64_section_header_t |
| Alias for ELFSectionHeader64 struct. | |
Enumerations | |
| enum class | MaxOS::processes::ELFIdentification { Magic0 , Magic1 , Magic2 , Magic3 , Class , Data , Version , OSABI , ABIVersion , Padding } |
| The indexes of the ELF identification array. More... | |
| enum class | MaxOS::processes::ELFClass { Invalid , Bits32 , Bits64 } |
| The class of the ELF file (32-bit or 64-bit) More... | |
| enum class | MaxOS::processes::ELFData { InvalidData , LittleEndian , BigEndian } |
| The data encoding of the ELF file (little-endian or big-endian) More... | |
| enum class | MaxOS::processes::ELFType { None , Relocatable , Executable , Shared , Core , ProcessorSpecificLow = 0xFF0 , ProcessorSpecificHigh = 0xFFF } |
| The type of the ELF file (executable, shared object, etc.) More... | |
| enum class | MaxOS::processes::ELFMachine { NoMachine , ATnTWe32100 , SPARC , x86 , MIPS = 0x8 , PowerPC = 0x14 , ARM = 0x28 , SuperH = 0x2A , IA_64 = 0x32 , x86_64 = 0x3E , AArch64 = 0xB7 , RISC_V = 0xF3 } |
| The target architecture of the ELF file. More... | |
| enum class | MaxOS::processes::ELFVersion { Invalid , Current } |
| The version of the ELF file. More... | |
| enum class | MaxOS::processes::ELFProgramType { Null , Load , Dynamic , Interpreter , Note , SharedLibrary , HeaderTable , TableProcessorSpecificLow = 0x70000000 , TableProcessorSpecificHigh = 0x7FFFFFFF } |
| The type of a program header in the ELF file. More... | |
| enum | MaxOS::processes::ELFProgramFlags { ELFExecute = (1 << 0) , ELFWrite = (1 << 1) , ELFRead = (1 << 2) } |
| The flags of a program header in the ELF file. More... | |
| enum class | MaxOS::processes::ELFSectionType { Null , ProgramBits , SymbolTable , StringTable , RelocationAddends , SymbolHashTable , DynamicLinkingTable , SectionNote , NoBits } |
| The type of a section in the ELF file. More... | |
Variables | |
| constexpr char | MaxOS::processes::ELF_MAGIC [4] = { 0x7F, 'E', 'L', 'F' } |
| The expected ELF magic number at the start of the file. | |
Defines structures and enums for handling ELF (Executable and Linkable Format) files in MaxOS.
Definition in file elf.h.
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
constexpr |
The expected ELF magic number at the start of the file.
Definition at line 22 of file elf.h.
Referenced by MaxOS::processes::ELF64::is_valid().