Ontwerp en bouw een besturingssysteem/Appendix B/Multiboot 0.6.96

De Multiboot Specificatie versie 0.6.96 wordt gebruikt door GRUB, de meest gebruikte bootloader voor hobby besturingssystemen.

Multiboot Header bewerken

De Multiboot Header is een blok gegevens over het besturingssysteem dat wordt gelezen door de bootloader om het besturingssysteem te kunnen laden. Het moet geheel in de eerste 8192 bytes van het kernelbestand staan, en moet beginnen op een 4-byte grens.

Naam Offset Type Beschrijving
magic 0 uint32 Vereist. Altijd 0x1BADB002
flags 4 uint32 Vereist. Zie hieronder.
checksum 8 uint32 Vereist. Zie hieronder.
header_addr 12 uint32 Optioneel. Fysieke geheugenadres waar de kernel geladen moet worden.
load_addr 16 uint32 Optioneel. TODO
TODO TODO uint32 TODO

Flags bewerken

 
3130292827262524
00000000
2322212019181716
0000000L
 
 
15141312111098
00000000
76543210
00000VMA
 
Naam Lengte Beschrijving
A 1 bit Module uitlijning:
  • 0: Geen uitlijning.
  • 1: Uitlijning op pagina-grenzen (4 KiB).
M 1 bit Geheugeninformatie:
  • 0: Niet doorgeven aan de kernel.
  • 1: Doorgeven aan de kernel.
V 1 bit Video mode tabel:
  • 0: Niet doorgeven aan de kernel.
  • 1: Doorgeven aan de kernel.
L 1 bit Kernel locatieinformatie:
  • 0: Niet aanwezig. Kernel is in ELF formaat.
  • 1: Wel aanwezig.
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.