Next: Header magic fields, Up: OS image format
The layout of the Multiboot header must be as follows:
Offset | Type | Field Name | Note
|
0 | u32 | magic | required
|
4 | u32 | flags | required
|
8 | u32 | checksum | required
|
12 | u32 | header_addr | if flags[16] is set
|
16 | u32 | load_addr | if flags[16] is set
|
20 | u32 | load_end_addr | if flags[16] is set
|
24 | u32 | bss_end_addr | if flags[16] is set
|
28 | u32 | entry_addr | if flags[16] is set
|
32 | u32 | mode_type | if flags[2] is set
|
36 | u32 | width | if flags[2] is set
|
40 | u32 | height | if flags[2] is set
|
44 | u32 | depth | if flags[2] is set
|
The fields `magic', `flags' and `checksum' are defined in Header magic fields, the fields `header_addr', `load_addr', `load_end_addr', `bss_end_addr' and `entry_addr' are defined in Header address fields, and the fields `mode_type', `width', `height' and `depth' are defind in Header graphics fields.