![]() |
L4Re Operating System Framework
Interface and Usage Documentation
|
API for embedding auxiliary information into binary programs. More...
Data Structures | |
| struct | l4re_elf_aux_t |
| Generic header for each auxiliary vector element. More... | |
| struct | l4re_elf_aux_vma_t |
| Auxiliary vector element for a reserved virtual memory area. More... | |
| struct | l4re_elf_aux_mword_t |
| Auxiliary vector element for a single unsigned data word. More... | |
Macros | |
| #define | L4RE_ELF_AUX_ELEM const __attribute__((used, section(".rol4re_elf_aux"), aligned(sizeof(l4_umword_t)))) |
| Define an auxiliary vector element. | |
| #define | L4RE_ELF_AUX_ELEM_T(type, id, tag, val...) |
| Define an auxiliary vector element. | |
Enumerations | |
| enum | { L4RE_ELF_AUX_T_NONE = 0 , L4RE_ELF_AUX_T_VMA , L4RE_ELF_AUX_T_STACK_SIZE , L4RE_ELF_AUX_T_STACK_ADDR , L4RE_ELF_AUX_T_KIP_ADDR , L4RE_ELF_AUX_T_EX_REGS_FLAGS } |
API for embedding auxiliary information into binary programs.
This API allows information for the binary loader to be embedded into a binary application. This information can be reserved areas in the virtual memory of an application and things such as the stack size to be allocated for the first application thread.
| #define L4RE_ELF_AUX_ELEM const __attribute__((used, section(".rol4re_elf_aux"), aligned(sizeof(l4_umword_t)))) |
Define an auxiliary vector element.
This is the generic method for defining auxiliary vector elements. A more convenient way is to use L4RE_ELF_AUX_ELEM_T.
Usage:
| #define L4RE_ELF_AUX_ELEM_T | ( | type, | |
| id, | |||
| tag, | |||
| val... ) |
Define an auxiliary vector element.
| type | is the data type for the element (e.g., l4re_elf_aux_vma_t) |
| id | is the identifier (variable name) for the declaration (the variable is defined with static storage class) |
| tag | is the tag value for the element e.g., L4RE_ELF_AUX_T_VMA |
| val | are the values to be set in the descriptor |
Usage:
| anonymous enum |