Executable image segments.
Definition in file segment.c.
| int prep_segment |
( |
void * |
segment, |
|
|
size_t |
filesz, |
|
|
size_t |
memsz |
|
) |
| |
Prepare segment for loading.
- Parameters
-
| segment | Segment start |
| filesz | Size of the "allocated bytes" portion of the segment |
| memsz | Size of the segment |
- Return values
-
Definition at line 61 of file segment.c.
71 if ( filesz >
memsz ) {
72 DBGC (
segment,
"SEGMENT [%#08lx,%#08lx,%#08lx) is " 84 DBGC (
segment,
"SEGMENT [%#08lx,%#08lx,%#08lx) wraps " 95 DBGC (
segment,
"SEGMENT [%#08lx,%#08lx,%#08lx) does not fit " static int memmap_is_usable(const struct memmap_region *region)
Check if memory region is usable.
#define EINVAL
Invalid argument.
uint16_t segment
Code segment.
uint16_t mid
Middle 16 bits of address.
uint32_t start
Starting offset.
void memmap_describe(uint64_t min, int hide, struct memmap_region *region)
Describe memory region from system memory map.
#define ERANGE_SEGMENT
Segment-specific error messages.
uint32_t end
Ending offset.
A memory region descriptor.
void * memset(void *dest, int character, size_t len) __nonnull
References DBGC, DBGC_MEMMAP, EINVAL, end, ERANGE_SEGMENT, max, memmap_region::max, memmap_describe(), memmap_is_usable(), memset(), memsz, mid, segment, and start.
Referenced by bzimage_exec(), com32_load_image(), com32_prepare_bounce_buffer(), comboot_prepare_segment(), elf_load_segment(), lkrn_exec(), multiboot_add_modules(), multiboot_load_raw(), nbi_prepare_segment(), and pxe_exec().